(58)【調査した分野】(Int.Cl.,DB名)
前記表示制御部は、表示部に表示した食物の画像が指定された場合に、前記分析テーブルおよび前記食材テーブルに基づいて、指定された食物の食材成分とその構成確率とを表示部に表示する、
ことを特徴とする請求項1〜3のいずれか1項に記載の食物摂取状況分析システム。
【発明を実施するための形態】
【0010】
以下に添付図面を参照して、本発明にかかる食物摂取状況分析システム、食物摂取状況分析方法の実施の形態を詳細に説明する。
【0011】
図1は、本実施の形態における食物摂取状況分析システム1000の構成例を示す図である。
図1に示すように、食物摂取状況分析システム1000は、複数のユーザ端末100と、分析サーバ200とを有している。また、ユーザ端末100と分析サーバ200とは、一般的な通信網であるネットワークNを介して無線通信により接続されている。
【0012】
ユーザ端末100は、携帯電話やスマートフォン等の一般的な携帯端末であり、撮像部101と、入力表示部102と、制御部103と、通信部104と、記憶部105とを有して構成されている。なお、以下では、ユーザ端末100は携帯端末である前提で説明しているが、例えば、企業や家庭内にある一般的なデスクトップPC(Personal Computer)等の固定端末であってもよい。また、以下では具体的な記載は省略しているが、ユーザ端末100の各機能は、実際には、例えば、CPU(Central Processing Unit)がROM(Read Only Memory)に記憶されているプログラムを実行することにより実現される。
【0013】
撮像部101は、携帯端末に搭載される一般的なカメラであり、利用者の操作によって、食事の内容(例えば、ごはん、おかず等)を撮像する。入力表示部102は、携帯端末に搭載される一般的なタッチパネルであり、利用者からのタッチ操作(例えば、撮像操作、ユーザIDやパスワード等の各種情報の入力操作)を受け付けたり、タッチ操作によって処理された結果を表示する。
【0014】
制御部103は、携帯端末100の各部の動作を制御するほか、入力された各種情報に対する処理を行う。通信部104は、入力表示部102から入力された各種情報、制御部103によって処理された各種情報を、ネットワークNを介して分析サーバ200に送信する。記憶部105は、一般的な記憶装置や記憶媒体であり、利用者が摂取した食事の内容を示す摂取テーブル1051を記憶する。摂取テーブル1051の構成例については、フローチャートを用いて後述する。
【0015】
分析サーバ200は、PCサーバやブレードサーバ等の一般的なサーバ装置であり、通信部201と、記憶部202と、ユーザ確認部203と、成分分析部204と、表示制御部205と、表示部206とを有して構成されている。分析サーバ200は、例えば、自治体や保健所等、食物の摂取状況を分析する様々な機関、施設、企業に設置されている。なお、本実施の形態では、分析サーバ200が表示部206を有している前提で説明しているが、分析サーバ200とは別にディスプレイ装置が設けられていてもよい。また、以下では具体的な記載は省略しているが、分析サーバ200の各機能は、実際には、例えば、CPUがROMに記憶されているプログラムを実行することにより実現される。
【0016】
通信部201は、携帯端末100から送信された各種情報を受信する。記憶部202は、一般的な記憶装置や媒体であり、
図1に示すように、会員テーブル2021と、食事テーブル2022と、食材テーブル2023と、分析テーブル2024と、共通摂取テーブル2025とを有している。
【0017】
会員テーブル2021は、本システムの利用者が登録されたテーブルである。食事テーブル2022は、会員ごとに摂取した食事の内容を示す情報を時系列に履歴で記憶するテーブルである。食材テーブル2023は、食事を構成する食材に関する情報を記憶するテーブルである。分析テーブル2024は、分析対象となる会員がある期間で摂取した食事の内容を示す情報を食事テーブル2022から抽出したテーブルである。共通摂取テーブル2025は、会員が共通に摂取した食材の内容を示す情報を記憶するテーブルである。これらの各テーブルの構成例については、フローチャートを用いて後述する。
【0018】
ユーザ確認部203は、携帯端末100を用いた本システムの利用者を認証し、摂取テーブル1051に記録されている情報を分析サーバ200内に格納する。ユーザ確認部203が行う具体的な処理については、フローチャートを用いて後述する。
【0019】
成分分析部204は、利用者が摂取した食事の内容からその食材を分析するとともに、会員に共通に摂取された食材の構成を分析する。成分分析部204が行う具体的な処理については、フローチャートを用いて後述する。
【0020】
表示制御部205は、成分分析部204による分析結果を表示部206に表示する。表示制御部205が行う具体的な処理については、フローチャートを用いて後述する。
【0021】
図2は、利用者が摂取した食事の内容を示す情報が分析サーバ200に記憶されるまでの処理(摂取データ登録処理)の処理手順を示すフローチャートである。
図2に示すように、まず、携帯端末100は、撮像部101が利用者からの操作によって食事(摂取物)の画像を撮像し(ステップS201)、入力表示部102が利用者から摂取品目、摂取日時、摂取場所の入力を受け付ける(ステップS202〜S204)。このように入力された各情報は、制御部103によって摂取テーブル1051に記憶される。
【0022】
図3は、摂取テーブル1051の構成例を示す図である。
図3に示すように、摂取テーブル1051は、利用者が食事を摂取した年月日および時刻と、その摂取場所と、その食事の内容を示す摂取写真と、摂取した食事のタイミングを示す摂取区分と、そのときの食事における摂取品目とが対応付けて記憶されている。
図3では、例えば、ある利用者が、2013年1月1日の朝8時に、東京で、A−1.jpgに示される写真のカツ丼を朝食として摂取したことを示している。
【0023】
携帯端末100の入力表示部102は、さらに利用者のユーザIDおよびパスワードの入力を受け付けて、通信部104がこれらの情報を分析サーバ200に送信する(ステップS205)。
【0024】
分析サーバ200は、携帯端末100から上述した各種情報を受け付け可能な状態で待機し(ステップS206)、携帯端末100からユーザIDおよびパスワードを受信すると、ユーザ確認部203は、これらの情報を利用者本人のものであることを確認するため、会員テーブル2021と突き合わせて本人認証を行う(ステップS207)。
【0025】
図4は、会員テーブル2021の構成例を示す図である。
図4に示すように、会員テーブル2021は、利用者の会員Noと、ユーザIDおよびパスワードと、生年月日と、性別と、居住地域とが対応付けて記憶されている。
図4では、例えば、会員AのユーザIDおよびパスワードは、それぞれID1およびPass1であり、生年月日が1980年1月23日、茨城県に居住する男性であることを示している。これらの情報は利用者が本システムを利用する前にあらかじめ会員テーブル2021に記憶されている。
【0026】
ユーザ確認部203は、携帯端末100から受信したユーザIDおよびパスワードと、会員テーブル2021に記憶されているユーザIDおよびパスワードが一致したと判断して本人認証すると、通信部104が、摂取テーブル1051に記憶された情報を分析サーバに送信し(ステップS208)、携帯端末100側の処理が終了する。
【0027】
分析サーバ200の通信部201は、携帯端末100から送信された摂取テーブル1051に記憶された情報を受信すると(ステップS209)、食事テーブル2022にその情報を格納する(ステップS210)。このステップS210の処理が終了すると、
図2に示した摂取データ登録処理が終了する。
【0028】
図5は、食事テーブル2022の構成例を示す図である。
図5に示すように、食事テーブル2022は、会員NOと、摂取テーブル1051と同様に、その会員が食事を摂取した年月日および時刻と、その摂取場所と、その食事の内容を示す摂取写真と、摂取した食事のタイミングを示す摂取区分と、そのときの食事における摂取品目とが対応付けて記憶されている。食事テーブル2022の各項目の内容は、
図3に示した摂取テーブル1051と同様であるため、ここではその説明を省略する。
【0029】
なお、携帯端末100の入力表示部101から入力される摂取区分、摂取品目、摂取場所は、利用者の操作性を良くするため、例えば、プルダウンメニューから選択された項目を、入力表示部101が受け付けることとしてもよい。
図6は、摂取区分、摂取品目、摂取場所のプルダウンメニューの例を示す図である。
図6では、例えば、摂取区分として、朝食、昼食、夕食等のメニューが表示され、利用者がこれらのメニューの中から1つの摂取区分を選択することができる。同様に、摂取品目については、焼き魚、ハムエッグ、カツ丼等のメニューが表示され、利用者がこれらのメニューの中から1つの摂取品目を選択することができ、摂取場所については、北海道、青森等のメニューの中からの中から1つの都道府県を選択することができる。なお、以下では摂取場所を都道府県単位に設定しているが、より詳細な地域を把握したい場合には、市区町村を設定してもよい。
【0030】
図7は、
図2に示した摂取データ登録処理によって、分析サーバ200が様々な会員の携帯端末100から摂取テーブル1051を受信して、その情報が食事テーブル2022に登録された様子を示す図である。
図7に示すように、複数の会員、あるいは一人の会員から任意のタイミングで受信された摂取テーブル1051が、食事テーブル2022に記憶されている。続いて、分析サーバ200の成分分析部204で行われる成分分析処理の中の分析対象抽出処理について説明する。分析対象抽出処理は、本システムで分析対象となるデータを抽出する処理である。
【0031】
図8は、分析対象抽出処理の処理手順を示すフローチャートである。
図8に示すように、分析対象抽出処理では、登録されている会員の中から、摂取された食物の分析対象となる会員の会員NOおよび分析対象となるデータを抽出するための期間(分析対象期間)が、分析サーバ200が有する不図示の入力装置から受け付けられると、成分分析部204が、これらの情報を、処理対象となる利用者を記憶する一時的な対象テーブル8001に記憶する(ステップS801、S802)。
【0032】
図9は、対象テーブル8001の構成例を示す図である。
図9に示すように、対象テーブル8001は、分析対象となる会員NO(分析会員NO)と、分析対象期間(分析対象開始年月日および分析対象終了年月日)とが対応付けて記憶されている。
図9では、例えば、会員NO「A」の会員について、2013年1月1日〜2013年1月3日までの摂取テーブル1051(すなわち食事テーブル2022)に記憶されたデータが分析対象として抽出されることを示している。
【0033】
成分分析部204は、対象テーブル8001に記憶された分析会員NOと分析対象期間をキーとして、分析対象データを食事テーブル2022の中から抽出するための分析対象データ抽出処理を行う(ステップS803)。データ抽出処理については、
図10を用いて後述する。
【0034】
そして、成分分析部204は、さらに分析対象となる会員が対象テーブル8001に記憶されているか否かを判定し(ステップS804)、さらに分析対象となる会員が対象テーブル8001に記憶されていると判定した場合(ステップS804;Yes)、ステップS801に戻って、以降の処理を繰り返す。一方、分析対象となる会員が対象テーブル8001に記憶されていないと判定した場合(ステップS804;No)、分析対象抽出処理を終了する。このように、対象テーブル8001に記憶されている全会員を対象に、分析対象抽出処理が行われる。
【0035】
図10は、データ抽出処理の処理手順を示すフローチャートである。
図10に示すように、成分分析部204は、対象テーブル8001を参照し、分析会員NOと分析対象期間を読み込み、分析会員NOおよび分析対象期間が一致するレコードを抽出し、分析テーブル2024に格納する(ステップS1001)。
【0036】
データ抽出処理では、成分分析部204は、例えば、
図11に示すような食事テーブル2022の中から、
図9に示した分析会員NOが「A」、「B」の会員、および分析対象期間が2013年1月1日〜2013年1月3日のレコードのみを抽出し、
図12に示すような分析テーブル2024に格納する。分析テーブル2024の各項目の内容については、食事テーブル2022と同様であるため、ここではその説明を省略する。
【0037】
そして、成分分析部204は、分析対象抽出処理が終了すると、会員に共通に摂取された食材を抽出するための共通食材抽出処理を行う。
【0038】
図13は、共通食材抽出処理の処理手順を示すフローチャートである。
図13に示すように、成分分析部204は、まず、対象テーブル8001の中から比較対象となる会員(比較会員)のレコードを取得する(ステップS1301)。
【0039】
次に、成分分析部204は、対象テーブル8001に記憶されている会員全員について処理を行ったか(EOFとなったか)否かを判定し(ステップS1302)、EOFとなったと判定した場合には(ステップS1302;Yes)、ステップS1307に進む。
【0040】
一方、成分分析部204は、EOFとなっていないと判定した場合には(ステップS1302;No)、分析テーブル2024を参照し、その中に含まれる比較会員と同じ会員NOの会員(当該会員)のレコード1件を取得し(ステップS1303)、ステップS1302の場合と同様に、EOFとなったか否かを判定する(ステップS1304)。
【0041】
成分分析部204は、EOFとなったと判定した場合(ステップS1304;Yes)、ステップS1306に進む。一方、成分分析部204は、EOFとなっていないと判定した場合(ステップS1304;No)、当該会員の摂取テーブル1301を作成する(ステップS1305)。
【0042】
図14は、ステップS1305における当該会員の摂取テーブル1301を作成する処理(会員摂取テーブル作成処理)の処理手順を示すフローチャートである。
図14に示すように、成分分析部204は、分析テーブル2024の中から当該レコードの摂取品目を取得する(ステップS1401)。そして、成分分析部204は、食材テーブル2023を参照し、取得した当該摂取品目の食材成分と構成確率を取得する(ステップS1402)。
【0043】
図15Aは、食材テーブル2023の構成例を示す図である。
図15Aに示すように、食材テーブル2023は、食事の品目ごとに、食材構成とその構成確率とが対応付けて記憶されている。
図15では、例えば、品目「カツ丼」については、「たまご」、「豚肉」、「たまねぎ」、「ごはん」等の食材から構成され、これらがその品目に含まれる確率が、それぞれ「0.8」、「0.8」、「0.5」、「0.9」等であることを示している。
【0044】
成分分析部204は、食材テーブル2023から当該摂取品目の食材成分と構成確率を取得すると、摂取品目および食材成分を摂取した年月日の列と摂取品目および摂取した食材成分ごとの行とによって構成される当該会員の摂取テーブル1301を作成し、摂取年月日ごとに、摂取品目および食材成分ごとの構成確率を記録する(ステップS1403)。当該会員の摂取テーブル1301の構成例については、
図16を用いて後述する。そして、成分分析部204は、当該会員の摂取テーブル1301を作成すると、その摂取テーブル1301に摂取内容を記録するための処理(摂取内容記録処理)を行う。
【0045】
図15Bは、摂取内容記録処理の処理手順を示すフローチャートである。
図15Bに示すように、成分分析部204は、まず、当該会員の摂取テーブル1301を読み込み(ステップS1501)、さらに、当該会員が摂取した食材成分の構成確率についてOR計算を実行し、その計算結果を当該摂取テーブル1301の摂取内容の行に記録する(ステップS1502)。ここで行われるOR計算は、例えば、A=1−(1−a1)(1−a2)…(1−ai)のような算式を用いることができる。例えば、摂取品目「たまご」については、成分分析部204は、カツ丼に含まれている確率「0.8」(a1)、幕の内弁当に含まれている確率「0.6」(a2)…等を上記計算式に当てはめ、当該会員について、ある期間の食事に、少なくとも「たまご」が含まれている確率を求め、摂取テーブル1301にその値を記録する。
【0046】
図16Aは、摂取テーブル1301の構成例を示す図である。
図16Aに示すように、摂取テーブル1301は、摂取品目に含まれる食材成分と、その摂取品目を摂取した日付と摂取内容とが対応付けて記憶されている。
図16Aでは、成分分析部204は、例えば、
図14に示した会員摂取テーブル作成処理で摂取品目(例えば、カツ丼)とその食材成分(例えば、たまご)のレコードを生成し、食材テーブル2023を参照して、摂取品目に含まれる各食材成分の構成確率(例えば、カツ丼に含まれるたまごの構成確率「0.8」)を、摂取年月日ごとに記録する。
【0047】
成分分析部204は、
図13に示したステップS1305における当該会員の摂取テーブル1301の作成が終了したと判定し(ステップS1304;Yes)、ステップS1306における摂取内容の記録が終了すると、ステップS1301に戻って、対象テーブル8001を参照し、以降の会員について、ステップS1301〜S1306までの各処理を繰り返す。
【0048】
そして、成分分析部204は、対象テーブル8001に記憶されている会員全員について処理を行った(EOFとなった)と判定した場合(ステップS1302;Yes)、ステップS1307に進み、対象テーブル8001に記録されている全会員について共通して摂取された食材成分を記憶する共通摂取テーブル2025を作成する共通摂取テーブル作成処理を実行する(ステップS1307)。
【0049】
図16Bは、共通摂取テーブル作成処理の処理手順を示すフローチャートである。
図16Bに示すように、共通摂取テーブル作成処理では、成分分析部204は、会員摂取テーブル作成処理および摂取内容記録処理で作成された全ての会員についての摂取テーブル1301を読み込み、共通摂取テーブル2025に会員ごとに列を作成するとともに、会員ごとの食材成分ごとに行を設け、該当する会員の食材成分を書き込む(ステップS1601)。
【0050】
図17は、共通摂取テーブル2025の構成例を示す図である。
図17に示すように、共通摂取テーブル2025は、食材成分と、会員のそれぞれとが対応付けて記憶されている。例えば、食材成分「たまご」については、会員Aが摂取した食事には「0.92」の確率で含まれ、会員Bが摂取した食事には「0.84」の確率で含まれていることを示している。
【0051】
そして、成分分析部204は、共通摂取テーブル2025の食材成分ごとに構成確率のAND計算を行って、その結果を共通摂取テーブル2025の共通摂取欄に記録する(ステップS1602)。例えば、成分分析部204は、会員Aが摂取した食事に食材成分「たまご」が含まれる確率「0.92」と、会員Bが摂取した食事に食材成分「たまご」が含まれる確率「0.84」とをAND計算し、他の会員についても同様にAND計算し、その結果「0.77」を共通摂取欄に記憶する。AND計算式については、例えば、X=xa×xb×…×xiを用いることができる。
【0052】
このステップS1602の処理が終了すると、
図16に示した共通摂取テーブル作成処理が終了し、
図13に示した共通食材抽出処理も終了する。共通食材抽出処理が終了すると、続いて、表示制御部205は、処理結果を入力表示部102に表示するための画面表示処理を実行する。
【0053】
図18は、画面表示処理の処理手順を示すフローチャートである。
図18に示すように、画面表示処理では、表示制御部205は、分析テーブル2024および共通摂取テーブル2025を取得し(ステップS1801)、共通摂取テーブル2025に登録されている会員数(例えば、テーブルの列数)と食材成分の数(例えば、テーブルの行数)をそれぞれ算出し、表示画面206に分析結果画面として表示する(ステップS1802)。この表示画面206の例については、
図19を用いて後述する。
【0054】
そして、表示制御部205は、共通摂取テーブル2025に記録されている食材のうち、共通摂取欄の数値が大きい順に、その食材成分とその数値とを対応付けた一覧を作成し、表示画面206に表示する(ステップS1803)。
【0055】
図19は、表示画面206に表示される分析結果画面の構成例を示す図である。
図19に示すように、分析結果画面では、画面左上部分(
図19(1))に、ステップS1801で算出された会員数と食材成分の数が表示され、画面中央上部分(
図19(2))に、ステップS1802で作成された一覧(共通食材の分析結果一覧)が表示されている。
図19では、共通食材の中で食材成分「たまご」の数値が最も大きいため、最初の行L1に表示されている。
【0056】
そして、表示制御部205は、対象テーブル8001および食事テーブル2022を取得し(ステップS1804)、対象テーブル8001から1レコードを取得する(ステップS1805)。
【0057】
表示制御部205は、対象テーブル8001から取得するレコードがなくなった(EOFとなった)か否かを判定し(ステップS1806)、EOFとなったと判定した場合(ステップS1806;Yes)、ステップS1809に進んで処理を終了し、表示画面206でのスクロール指示イベントが受け付けられるまで待機する(ステップS1809)。
【0058】
一方、表示制御部205は、EOFとなっていないと判定した場合(ステップS1806;No)、対象テーブル8001の会員および分析開始年月日をキーとして食事テーブル2022にアクセスし、対象テーブル8001の各会員がその年月日に摂取した食事の摂取写真を、その年月日よりも1つ前の年月日から分析対象期間を含めて複数(例えば、4日分)連続して取得する(ステップS1807)。表示制御部205が、摂取写真を分析開始年月日よりも少し前の年月日から取得する理由は、分析対象期間内における食事の摂取内容と、分析対象期間よりも少し前の期間における食事の摂取内容とを比較して、その違いを分析するためである。なお、本実施の形態では、分析対象期間よりも少し前の期間における食事の摂取写真を取得しているが、表示制御部205は、あらかじめ任意に設定された日数(例えば、1日ではなく1週間等)について表示することも可能である。さらには、分析対象期間よりも少し前の期間ではなく、分析対象期間よりも少し後の期間における食事の摂取写真(例えば、1日、1週間等)を取得し、画面上に表示させてもよい。
【0059】
そして、表示制御部205は、取得した当該会員についての食事の摂取写真のうち、分析対象期間となる分析対象開始年月日から分析対象終了年月日までの摂取写真に対してマーキング処理(例えば、
図19に示す会員Aについて食事の摂取内容を表示した行L2において、(3)−1のように食事の摂取写真Pの上側にマークTを表示する)とともに、分析対象期間前後の摂取写真よりも明るいトーンで画面表示する(ステップS1808)。このように、表示制御部205が、分析対象期間とその前後の期間とで明るさを変えて表示することによって、分析対象期間における食事の摂取内容が一目瞭然となる。
【0060】
そして、表示制御部205は、分析対象テーブル8001に登録されている全ての会員について処理が終了するまでステップS1805〜S1808までの処理を繰り返す。なお、表示制御部205は、摂取写真が画面上に収まらない場合には、フリップにより画面を上下、左右にスクロールさせる画面を表示したり、あるいは画面内に摂取写真が納まるよう縮小表示させてもよい。
【0061】
このように、本システムでは、上記各処理を行うことにより、食物の摂取状況を横断的に管理し、分析することが可能となる。また、それぞれの会員にとっても、自らの食生活において摂取された食材成分を把握することができ、生活改善等の健康管理に役立てることができる。さらに、それぞれの会員の食事の摂取内容が、データとして時系列に履歴で蓄積されているので、例えば、潜伏期間がある疾病が発病した場合であっても、各会員の過去の摂取物の追跡が可能となる。
【0062】
なお、本実施の形態では、摂取写真を画面に表示することとしたが、さらにその摂取写真がクリックされた場合に、表示制御部205が、分析テーブル2024および食材テーブル2023にアクセスし、
図15Aに示したように、摂取写真に撮像された食事の摂取品目に含まれる食材およびその構成確率を表示させてもよい。このように食材成分とその構成確率とを画面に表示させることにより、摂取された食事がどのような構成であるかを確認することができる。
【0063】
また、本実施の形態では、表示画面206に分析結果をそのまま表示することとしたが、例えば、分析対象とされた会員の会員データや、各会員の病状に関する情報等とともに画面上に表示してもよい。
図20は、分析結果とともに、会員に関する情報や病状に関する情報の表示例を示す図である。
図20では、例えば、分析結果と共に、会員の年齢、性別、居住地域が表示され、病状に関する情報(発症情報)として、その病気が発症した日時、症状、体温が表示されている。なお、会員に関する情報は会員テーブル2021にあらかじめ登録されている情報であり、病状に関する情報は、例えば、会員が診察を受けた病院や診療所等の医療機関から取得し、表示制御部205が、分析結果や会員に関する情報とともに画面上に表示する。このように、分析結果とともに会員に関する情報や病状に関する情報を表示することにより、多面的な分析が可能となる。
【0064】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、本実施の形態では、分析サーバ200の表示制御部205が分析結果を表示することとしたが、分析結果をユーザ端末100に送信し、入力表示部102に表示させることとしてもよい。分析結果をユーザ端末100側で表示させることにより、任意の位置で分析結果を確認することが可能となる。