(57)【要約】【課題】コース料理等の食事を検知すること。【解決手段】サーバ装置３０は、対象者の心拍データを取得し、取得した心拍データにおいて振幅が所定の閾値を超えるピークを検出し、検出したピークの数が複数である場合、検出したピークごとに求まるピークの振幅または面積と、検出したピーク間で求まるピークの出現間隔とに基づいて、対象者によりコース料理が摂取されたか否かを判定する。【選択図】図１
2019185405.tif 000002
【特許請求の範囲】
【請求項１】
対象者の心拍データを取得し、
取得した前記心拍データにおいて振幅が所定の閾値を超えるピークを検出し、
前記検出したピークの数が複数である場合、前記検出したピークごとに求まるピークの振幅または面積と、前記検出したピーク間で求まるピークの出現間隔とに基づいて、前記対象者によりコース料理が摂取されたか否かを判定する、
処理をコンピュータに実行させる食事検知プログラム。
【請求項２】
前記判定する処理は、前記検出したピークごとに求まるピークの振幅または面積の大小に関する順序が前記コース料理のメニューに含まれる各品目の摂取量の大小に関する順序と対応し、かつ前記検出したピーク間で求まるピークの出現間隔が前記コース料理のメニューで各品目が提供される間隔の範囲内であるか否かを判定する請求項１に記載の食事検知プログラム。
【請求項３】
前記判定する処理は、前記検出したピークごとに求まるピークの継続時間にさらに基づいて前記コース料理が摂取されたか否かを判定する請求項１に記載の食事検知プログラム。
【請求項４】
前記判定する処理は、前記心拍データの第１心拍波形にフィルタが適用された第２心拍波形が近似された直線の傾きが正の値である場合、前記コース料理が摂取されたか否かの判定を実行する請求項１に記載の食事検知プログラム。
【請求項５】
対象者の心拍データを取得し、
取得した前記心拍データにおいて振幅が所定の閾値を超えるピークを検出し、
前記検出したピークの数が複数である場合、前記検出したピークごとに求まるピークの振幅または面積と、前記検出したピーク間で求まるピークの出現間隔とに基づいて、前記対象者によりコース料理が摂取されたか否かを判定する、
処理をコンピュータが実行する食事検知方法。
【請求項６】
対象者の心拍データを取得する取得部と、
取得した前記心拍データにおいて振幅が所定の閾値を超えるピークを検出する検出部と、
前記検出したピークの数が複数である場合、前記検出したピークごとに求まるピークの振幅または面積と、前記検出したピーク間で求まるピークの出現間隔とに基づいて、前記対象者によりコース料理が摂取されたか否かを判定する判定部と、
を有する食事検知装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、食事検知プログラム、食事検知方法及び食事検知装置に関する。
【背景技術】
【０００２】
ヘルスケアのサポートには、１つの側面として、日常生活の様々な行動、例えば食事や排尿、排便などの記録が活用される。これらの行動のうち食事を検知する技術の１つとして、計測した心拍データと学習モデルとを比較して、学習モデルとの相関や類似度などから、計測期間中における食事行動期間を特定するものがある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２０１７／０８１８２９号
【特許文献２】国際公開第２０１７／０８１７８７号
【非特許文献】
【０００４】
【非特許文献１】Michael  B.  Sidery,  Ian  A.  Macdonald  “The  effect  of  meal  size  on  the  cardiovascular  responses  to  food  ingestion”  Department  of  Physiology  and  Pharmacology,  University  of  Nottingham  Medical  School,  Clfton  Boulevard,  Nottingham  NG7  2UH,  23  July  1993
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の技術は、一度にある程度の食事量が摂取される食事によって表れる心拍の特徴を検知するものに過ぎない。このため、上記の技術では、複数回に分けて少量の食べ物が摂取される食事、例えばコース料理などを検知することが困難である。なぜなら、複数回に分けて少量の食べ物が摂取される場合、一食が一度に摂取される場合に比べて一度あたりの食事量が少ないことが一因となって食事による心拍の上昇も少ないからである。
【０００６】
１つの側面では、本発明は、コース料理等の食事を検知できる食事検知プログラム、食事検知方法及び食事検知装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
一態様では、食事検知プログラムは、対象者の心拍データを取得し、取得した前記心拍データにおいて振幅が所定の閾値を超えるピークを検出し、前記検出したピークの数が複数である場合、前記検出したピークごとに求まるピークの振幅または面積と、前記検出したピーク間で求まるピークの出現間隔とに基づいて、前記対象者によりコース料理が摂取されたか否かを判定する、処理をコンピュータに実行させる。
【発明の効果】
【０００８】
コース料理等の食事を検知できる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施例１に係るヘルスケア支援システムに含まれる各装置の機能的構成の一例を示す図である。
【図２】図２は、心拍データの一例を示す図である。
【図３】図３は、心拍データの一例を示す図である。
【図４】図４は、心拍データの一例を示す図である。
【図５】図５は、心拍データの一例を示す図である。
【図６】図６は、心拍データの一例を示す図である。
【図７】図７は、第２窓データの一例を示す図である。
【図８】図８は、長期トレンドの一例を示す図である。
【図９】図９は、回帰直線の一例を示す図である。
【図１０】図１０は、短期トレンドの一例を示す図である。
【図１１】図１１は、弱ピークの一例を示す図である。
【図１２】図１２は、弱ピークの一例を示す図である。
【図１３】図１３は、ヘルスケア支援サービスの一例を示す図である。
【図１４】図１４は、実施例１に係るヘルスケア支援処理の手順を示すフローチャートである。
【図１５】図１５は、実施例１に係る第２検知処理の手順を示すフローチャートである。
【図１６】図１６は、弱ピークの一例を示す図である。
【図１７】図１７は、弱ピークの一例を示す図である。
【図１８】図１８は、弱ピークの一例を示す図である。
【図１９】図１９は、実施例１及び実施例２に係る食事検知プログラムを実行するコンピュータのハードウェア構成例を示す図である。
【発明を実施するための形態】
【００１０】
以下に添付図面を参照して本願に係る食事検知プログラム、食事検知方法及び食事検知装置について説明する。なお、この実施例は開示の技術を限定するものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例１】
【００１１】
［システム構成］
図１は、実施例１に係るヘルスケア支援システムに含まれる各装置の機能的構成の一例を示す図である。図１に示すヘルスケア支援システム１は、各種のヘルスケア支援サービスを提供するものである。このようなヘルスケア支援サービスの例として、ウェアラブル端末１０により取得される心拍データを用いて、対象者の日常生活の行動、例えば食事等を記録するサービス、さらには、その記録を活用する派生のサービスなどが挙げられる。
【００１２】
図１に示すように、ヘルスケア支援システム１には、ウェアラブル端末１０と、ＩｏＴ（Internet  of  Things）デバイス２０と、サーバ装置３０とが含まれる。なお、図１には、ＩｏＴデバイス２０に１つのウェアラブル端末１０が接続される場合を図示したが、ＩｏＴデバイス２０には複数のウェアラブル端末１０が接続されることとしてもかまわない。また、図１には、サーバ装置３０に１つのＩｏＴデバイス２０が接続される場合を例示したが、サーバ装置３０には、複数のＩｏＴデバイス２０が接続されることとしてもかまわない。
【００１３】
これらのうち、ウェアラブル端末１０及びＩｏＴデバイス２０の間では、一例として、ＢＬＥ（Bluetooth（登録商標）  Low  Energy）などの近距離無線通信を介してデータが授受される。これはあくまで一例であり、ウェアラブル端末１０及びＩｏＴデバイス２０が有線により接続されることとしてもかまわない。また、ＩｏＴデバイス２０及びサーバ装置３０の間は、有線または無線を問わず、任意のネットワークを介して接続することができる。このようなネットワークの例として、３Ｇ（Generation）、ＬＴＥ（Long  Term  Evolution）、４Ｇや５Ｇなどに対応するモバイルネットワーク、ＬＡＮ（Local  Area  Network）やＶＰＮ（Virtual  Private  Network）などの構内通信網の他、インターネットなどの任意のネットワークが該当する。
【００１４】
ウェアラブル端末１０は、上記のヘルスケア支援サービスの提供を受ける対象者が装着することにより利用されるコンピュータである。例えば、ウェアラブル端末１０は、腕輪型、リストバンド型、あるいは指輪型のガジェットであってもよいし、頭部に装着されるヘッドマウントディスプレイやスマートグラスであってもよいし、また、胸部や腰部などの胴体の他、足首に装着されるタイプのデバイスであってもよい。
【００１５】
例えば、ウェアラブル端末１０には、対象者の心拍を計測する心拍センサ１１が搭載される。ここで言う「心拍数」とは、血液を送り出す心臓の拍動回数を指す。例えば、心拍センサ１１に心拍数の変化に対応する血流量の変化を測定する光電脈波センサを採用することにより、単位時間あたりの心拍数を計測できる。このとき、単位時間を１分間とする場合、心拍数はｂｐｍ（beats  per  minute）等で表現される。また、単位時間を１秒間とする場合、心拍数はＨｚで表現される。この他、心拍センサ１１には、心臓の電気的活動を計測する心電センサを採用することもできる。この場合、心電波形におけるＲ波とＲ波の間隔を心拍数の代わりに用いることができる。このように心拍センサ１１により計測される心拍数の時系列データは、ＩｏＴデバイス２０へ出力される。以下では、心拍センサ１１により計測される心拍数の時系列データのことを「心拍データ」と記載する場合がある。
【００１６】
なお、ここでは、心拍センサ１１がウェアラブル端末１０に搭載される場合を例示したが、必ずしもウェアラブル端末１０に搭載されずともよく、対象者が生活する環境側に設置される環境センサであってもかまわない。例えば、対象者の生体の一部が所定のサンプリング周波数で撮像される画像に関する輝度の時系列変化から心拍数を検出したり、ＲＦ（Radio  Frequency）モーションセンサを用いて拍動に伴うドップラ周波数を検出したりすることにより、心拍数の検出を対象者の生体部位に非接触の状態で実現することとしてもかまわない。
【００１７】
ＩｏＴデバイス２０は、ウェアラブル端末１０をネットワークに接続する機能を一側面として有するデバイスである。このＩｏＴデバイス２０には、一例として、対象者が使用するスマートフォンや携帯電話機、ＰＨＳ（Personal  Handyphone  System）などを始め、スレート端末やタブレット端末などの携帯端末装置が対応する。
【００１８】
例えば、ＩｏＴデバイス２０は、ウェアラブル端末１０からＢＬＥ通信等を介して通知された心拍データをネットワークを介してサーバ装置３０に転送する。このようにウェアラブル端末１０からＩｏＴデバイス２０を介してサーバ装置３０へ転送される心拍データなどのセンサイベントは、一例として、ＭＱＴＴ（Message  Queuing  Telemetry  Transport）メッセージとして転送できる。このとき、心拍データは、心拍数が計測される度にリアルタイムで伝送されることとしてもよいし、所定期間、例えば１２時間、１日間、１週間や１ヶ月などにわたって蓄積してから伝送することとしてもかまわない。また、心拍データは、心拍データを受信するサーバ装置３０側で対象者であるウェアラブル端末１０のユーザが識別可能な状態で送信される。例えば、心拍データは、ユーザの識別情報もしくはユーザの識別情報と関連付けられたウェアラブル端末１０のＭＡＣ（Media  Access  Control）アドレスや個体識別番号などの情報と共にサーバ装置３０へ転送される。
【００１９】
サーバ装置３０は、上記のヘルスケア支援サービスを提供するコンピュータである。例えば、サーバ装置３０は、パッケージソフトウェア又はオンラインソフトウェアとして、上記のヘルスケア支援サービスに対応する機能を実現するヘルスケア支援プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、サーバ装置３０は、上記のヘルスケア支援サービスを提供するサーバとしてオンプレミスまたはレンタルで実装することとしてもよいし、アウトソーシングによって上記のヘルスケア支援サービスを提供するクラウドとして実装することとしてもかまわない。
【００２０】
［課題の一側面］
上述の通り、上記の背景技術の欄で挙げた技術は、一食分の食事が一度にまとめて摂取される食事によって表れる心拍の特徴を検知するものに過ぎない。すなわち、上記の背景技術の欄で挙げた技術では、一食分のメニューが一度に提供される食事の想定しかなく、一食分のメニューが複数回に分けて提供される食事の想定がない。例えば、コース料理等の食事では、メニューに定められた品目および順序にしたがっていわゆる「皿」と呼ばれる料理が提供される。
【００２１】
このように複数の品目が一定の順序で摂取される場合、コース料理全体で一品あたりが占める食事量は、一食分の食べ物が一度にまとめて摂取される食事、例えば定食やセットメニュー等の食事の食事量に比べて少ない。これが一因となって、コース料理等のメニューの中の一皿の食べ物が摂取された場合に発生する心拍変化も抑えられる。このように心拍変化が抑えられる場合、心拍波形に食事らしい特徴が現れにくいので、コース料理等の食事を検知するのが困難である。
【００２２】
以下では、一食分の食べ物が一度にまとめて摂取される食事、例えば定食やセットメニュー等の食事のことを「通常の食事」と記載すると共に、一食分の食事が複数回に分けて摂取される食事、例えばコース料理等の食事のことを「コース料理」と記載する場合がある。
【００２３】
図２及び図３は、心拍データの一例を示す図である。図２及び図３に示すグラフの縦軸は、心拍数（ｂｐｍ）を指し、横軸は、時間を指す。図２には、通常の食事が行われた場合に計測された心拍データｈ１が細線で示されると共に、心拍データｈ１に所定のフィルタ、例えばメジアンフィルタが適用された心拍データＨ１が太線で示されている。さらに、図２には、リファレンスとして、通常の食事が開始されてから終了するまでの食事期間Ｒ１１がハッチングで示されている。また、図３には、コース料理が行われた場合に計測された心拍データｈ２が細線で示されると共に、心拍データｈ２にメジアンフィルタが適用された心拍データＨ２が太線で示されている。さらに、図３には、リファレンスとして、コース料理における一皿目の食事期間Ｒ２１、二皿目の食事期間Ｒ２２および三皿目の食事期間Ｒ２３がハッチングで示されている。
【００２４】
図２に示すように、心拍データＨ１では、通常の食事が食事期間Ｒ１１に行われることにより、心拍数の上昇が観測される。この場合、通常の食事が行われる前に観測された心拍数、例えば心拍データＨ１の波形で観測される心拍数の最低値をベースラインＢＬ１とし、通常の食事による心拍上昇のピーク点ｐ１１の心拍数からベースラインＢＬ１の心拍数を減算する。これによって、通常の食事による心拍変化のピークの振幅Ｐ１１は、３０ｂｐｍ程度と求まる。
【００２５】
一方、図３に示すように、心拍データＨ２では、コース料理のうち一皿目の料理が食事期間Ｒ２１に摂取され、二皿目の料理が食事期間Ｒ２２に摂取されると共に、三皿目の料理が食事期間Ｒ２３に摂取される。このようにコース料理が行われた場合にも、心拍数の上昇は観測されるが、各皿の料理が摂取されることによる心拍数の上昇幅は、いずれも通常の食事による心拍数の上昇幅には及ばない。例えば、一皿目の料理による心拍上昇のピーク点ｐ２１の心拍数からベースラインＢＬ２の心拍数を減算することにより、一皿目の料理による心拍変化のピークの振幅Ｐ２１は、１０ｂｐｍ程度と求まる。
【００２６】
これらピークの振幅Ｐ１１およびピークの振幅Ｐ２１を比較すると、通常の食事が行われる場合と、一皿目の料理が摂取される場合とでは、３倍程度の開きがある。これは、コース料理では各皿の料理が摂取される食事期間と食事期間の間にインターバルがあるので、一皿当たりの食べ物の摂取量が通常の食事の一食分の摂取量に比べて少ないことが一因に挙げられる。このようにコース料理が行われる場合、通常の食事が行われる場合に比べて食事らしい特徴が心拍変化として現れにくい。
【００２７】
例えば、心拍変化の特徴量として、食事開始後に先行して現れる第１ピークおよび第１ピークに後続して現れる第２ピークのうち、食事行為、例えば食道の蠕動運動等に伴って現れる第１ピークの振幅が算出される場合を例に挙げる。このとき、図２に示す心拍データＨ１で観測されるピークの振幅Ｐ１１が第１ピークの振幅として算出される場合と、図３に示す心拍データＨ２で観測されるピークの振幅Ｐ２１が第１ピークの振幅として算出される場合とを比べると、後者は前者に比べて３分の１程度しかない。このような特徴量を閾値と比較することで食事または非食事を判定したり、機械学習により生成されたモデルへ特徴量を入力することで食事または非食事のクラス分類を行ったりしても、コース料理は、通常の食事よりも検知しづらいことがわかる。
【００２８】
［課題解決のアプローチの一面］
そこで、本実施例に係るサーバ装置３０は、上記のヘルスケア支援サービスの一環として、心拍データに複数のピークが含まれる場合、各ピークから算出される特徴量と、ピークの出現間隔とに基づいてコース料理が摂取されたか否かを判定する。
【００２９】
図４及び図５は、心拍データの一例を示す図である。図４及び図５には、いずれも図３に示す心拍データＨ２が示されている。これらのうち、図４に示す心拍データＨ２には、心拍データＨ２に含まれる３つのピークｐ２１〜ｐ２３が丸囲いの標示でピックアップして示されている。さらに、図５に示す心拍データＨ２には、３つのピークｐ２１〜ｐ２３ごとに面積Ｓ１〜Ｓ３の特徴量がハッチングで示されている。さらに、図５には、ピークｐ２１の出現が終了してからピークｐ２２の出現が開始するまでの間隔がピークの出現間隔Ｔ１として示されると共に、ピークｐ２２の出現が終了してからピークｐ２３の出現が開始するまでの間隔がピークの出現間隔Ｔ２として示されている。
【００３０】
図４に示す心拍データＨ２には、心拍数の振幅が所定の閾値Ｔｈ１を超えるピークの検出が実行される。例えば、閾値Ｔｈ１には、コース料理における一皿当たりの食べ物の摂取量が通常の食事の一食分の摂取量に比べて少ない側面から、通常の食事時に観測される心拍上昇幅よりも小さい値、例えば８ｂｐｍを設定することができる。このような側面から、心拍数の振幅が上記の閾値Ｔｈ１を超えるピークのことを「弱ピーク」と記載する場合がある。これによって、図４に丸囲いの標示で示される通り、心拍データＨ２から弱ピークｐ２１〜ｐ２３が得られる。
【００３１】
続いて、図５に示すように、３つの弱ピークｐ２１〜ｐ２３ごとに面積Ｓ１〜Ｓ３が各弱ピークｐ２１〜ｐ２３の特徴量として算出される。例えば、弱ピークｐ２１の開始から弱ピークｐ２１の終了までの区間において、心拍データＨ２の波形およびベースラインＢＬ２により囲まれる図形の面積Ｓ１が弱ピークｐ２１の特徴量として算出される。これと同様にして、弱ピークｐ２２の開始から弱ピークｐ２２の終了までの区間において、心拍データＨ２の波形およびベースラインＢＬ２により囲まれる図形の面積Ｓ２が弱ピークｐ２２の特徴量として算出される。さらに、弱ピークｐ２３の開始から弱ピークｐ２３の終了までの区間において、心拍データＨ２の波形およびベースラインＢＬ２により囲まれる図形の面積Ｓ３が弱ピークｐ２３の特徴量として算出される。
【００３２】
さらに、図５に示すように、心拍データＨ２から弱ピークの出現間隔Ｔ１および出現間隔Ｔ２が算出される。ここで言う「出現間隔」とは、あくまで一側面として、ある弱ピークの出現が終了してからその次の弱ピークの出現が開始するまでの間隔を指す。このような定義の場合、２つの隣接する弱ピークにつき１つの出現間隔が算出されるので、弱ピークの数をＮ個としたとき、出現間隔は（Ｎ−１）個となる。図５に示す心拍データＨ２には、３つの弱ピークｐ２１〜ｐ２３が含まれるので、２（＝３−１）個の出現間隔が求められる。すなわち、弱ピークｐ２１の出現から終了した時点から弱ピークｐ２２の出現が開始した時点までの期間が出現間隔Ｔ１として算出される。これと共に、弱ピークｐ２２の出現から終了した時点から弱ピークｐ２３の出現が開始した時点までの期間が出現間隔Ｔ２として算出される。なお、図５には、特徴量のあくまで一例として、弱ピークの面積や出現間隔を例に挙げたが、弱ピークの振幅、例えば弱ピークの心拍数およびベースラインの心拍数の差などの他の特徴量として算出することとしてもかまない。
【００３３】
その上で、各弱ピークの特徴量が第１の条件を満たすか否かが判定される。あくまで一例として、各弱ピークの特徴量の大小に関する順序がコース料理の各皿の摂取量の大小に関する順序と対応するか否かが判定される。例えば、コース料理では、順番が後になるにつれて摂取量が大きい食べ物が提供される側面がある。このような側面に従えば、メニューに含まれる皿が弱ピークの個数と同数である３つであるとしたとき、各皿の摂取量は、一皿目の摂取量＜二皿目の摂取量＜三皿目の摂取量といった大小関係の順序になる可能性が高い。このことから、弱ピークｐ２１〜ｐ２３の特徴量の大小に関する順序が弱ピークｐ２１の面積Ｓ１＜弱ピークｐ２２の面積Ｓ２＜弱ピークｐ２３の面積Ｓ３の順、すなわちコース料理の各皿で提供される摂取量の順に対応するか否かが判定される。
【００３４】
これと同時または並行して、弱ピークの出現間隔が第２の条件を満たすか否かが判定される。あくまで一例として、弱ピークの出現間隔がコース料理で各皿の食べ物が提供される間隔に対応するか否かが判定される。例えば、コース料理では、メニューで定められた順番にしたがって当該順番に対応する皿が提供されるが、ある皿が提供されてから次の皿が提供されるまでには一定のインターバルが存在する。すなわち、次の皿は、その直前に提供された皿の料理が食べ終えられたのがコース料理の皿をサーブする人物に確認されてからとなる。その一方で、前の皿の料理が食べ終えられたままの状態で放置される事態も起こりづらい。このことから、上記のインターバルは、一定の時間以内に収束する可能性が高い。そこで、弱ピークの出現間隔が下限値Ｔｍｉｎおよび上限値Ｔｍａｘにより設定される料理のサーブ間隔以内であるか否かが判定される。
【００３５】
ここで、各弱ピークの特徴量が第１の条件を満たす場合、対象者の心拍上昇の推移がコース料理のメニューにしたがって提供される各皿の摂取量の推移に対応する可能性が高まる。さらに、弱ピークの出現間隔が第２の条件を満たす場合、対象者の心拍上昇がコース料理で各皿の食べ物が提供される間隔に対応する可能性が高まる。言い換えれば、運動や精神的要素などの食事以外の外乱が原因となって心拍上昇が発生している可能性が低くなる。
【００３６】
これらのことから、本実施例では、各弱ピークの特徴量が第１の条件を満たし、かつ弱ピークの出現間隔が第２の条件を満たす場合、コース料理が摂取されたと判定する。これによって、コース料理が摂取される場合に現れる心拍変化の特徴を捉えて食事または非食事を判定することができる。したがって、コース料理の食事の検知を実現できる。
【００３７】
［サーバ装置３０の機能的構成］
次に、本実施例に係るサーバ装置３０の機能的構成について説明する。図１に示すように、サーバ装置３０は、取得部３１と、適用部３２と、第１検知部３３と、第２検知部３４と、提供部３５とを有する。なお、サーバ装置３０は、図１に示す機能部以外にも既知のコンピュータが有する各種の機能部、例えば他の装置との間で通信制御を行う通信インタフェースなどを有することとしてもかまわない。
【００３８】
図１に示す取得部３１、適用部３２、第１検知部３３、第２検知部３４及び提供部３５などの機能部は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などのハードウェアプロセッサにより仮想的に実現される。すなわち、プロセッサは、図示しない記憶装置、例えばＨＤＤ（Hard  Disk  Drive）、光ディスクやＳＳＤ（Solid  State  Drive）などからＯＳ（Operating  System）の他、上記のヘルスケア支援プログラムまたはそのモジュールである食事検知プログラムなどのプログラムを読み出す。その上で、プロセッサは、ヘルスケア支援プログラムや食事検知プログラムを実行することにより、ＲＡＭ（Random  Access  Memory）等のメモリ上に上記の機能部に対応するプロセスを展開する。このようにプログラムが実行される結果、上記の機能部がプロセスとして仮想的に実現される。ここでは、プロセッサの一例として、ＣＰＵやＭＰＵを例示したが、汎用型および特化型を問わず、任意のプロセッサにより上記の機能部が実現されることとしてもかまわない。この他、上記の機能部または機能部の一部は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などのハードワイヤードロジックによって実現されることとしてもかまわない。
【００３９】
上記の機能部には、ＨＤＤ、光ディスクやＳＳＤなどの記憶装置を外部記憶装置または補助記憶装置として使用できる動作環境が与えられると共に、プロセッサがアクセス可能なメモリもしくはメモリが有する記憶領域の一部がワークエリアとして割り当てられる。例えば、メモリの例として、各種の半導体メモリ素子、例えばＲＡＭやフラッシュメモリなどの主記憶装置が対応する。また、プロセッサがアクセス可能な記憶領域は、メモリ上にワークエリアとして実現されずともよく、外部記憶装置や補助記憶装置に退避されたスワップ領域であってもかまわない。
【００４０】
取得部３１は、心拍データを取得する処理部である。
【００４１】
一実施形態として、取得部３１は、心拍センサ１１から取得された心拍データを適用部３２へ出力する。このようにウェアラブル端末１０から心拍データなどのセンサイベントを取得する取得部３１の機能は、一例として、ＭＱＴＴサーバ用のプログラムを実行させることにより実装できる。
【００４２】
適用部３２は、心拍データに所定のフィルタを適用する処理部である。
【００４３】
一実施形態として、適用部３２は、取得部３１により取得された心拍データに中央値を抽出するメジアンフィルタを適用する。このようにメジアンフィルタが適用された心拍データは、通常の食事を検知する第１検知部３３およびコース料理を検知する第２検知部３４へ出力される。
【００４４】
ここで、心拍データにメジアンフィルタを適用するのは、１つの側面として、心拍データには急峻なノイズが含まれるからである。すなわち、心拍数は、コンピュータ上では４２ｂｐｍ〜２４０ｂｐｍの離散値として観測されるが、時間的に連続して変化する性質を有する。このため、心拍数が上昇したり、あるいは上昇した心拍数が降下したりする場合でも、ある時点の心拍数が次の時点でかけ離れた値には変化しにくい。例えば、心拍データにおいて８０ｂｐｍ、１２０ｂｐｍ、８１ｂｐｍといった心拍数が時系列に観測されたとしても、現実には、心拍数が８０ｂｐｍから１２０ｂｐｍへ上昇したり、心拍数が１２０ｂｐｍから８１ｂｐｍへ下降したりする心拍変化は起こりづらい。このため、心拍データにメディアフィルタを適用することにより、各時点における心拍数の観測値は移動中央値に置き換えられる。例えば、上記の例で言えば、１２０ｂｐｍの観測値は３つの心拍数の中央値である８１ｂｐｍへ置き換えられる。これによって、急峻なノイズを含む心拍データが心拍の性質に反しない程度に滑らかにされる。
【００４５】
なお、ここでは、心拍データに適用するフィルタの一例として、メジアンフィルタを例に挙げたが、これに限定されない。例えば、ローパスフィルタ等の他のフィルタを心拍データに適用することができるのは言うまでもない。
【００４６】
第１検知部３３は、通常の食事を検知する処理部である。
【００４７】
一実施形態として、第１検知部３３は、適用部３２によりメジアンフィルタが適用された心拍データに所定の時間長、例えば２１０分間を持つ第１窓を設定する。続いて、第１検知部３３は、第１窓が設定された区間に対応する部分データを切り出す。このように第１窓に対応する部分データが切り出された後、第１検知部３３は、前回に設定された第１窓を所定のずらし幅、例えば５分間だけシフトさせる。その上で、第１検知部３３は、シフト後の第１窓に対応する部分データを切り出す。以下、心拍データのうち第１窓に対応する部分が切り出された部分データのことを「第１窓データ」と記載する場合がある。
【００４８】
このように切り出された第１窓データごとに、第１検知部３３は、当該第１窓データの開始時刻から所定の期間、例えば６０分間までの期間を食事前とし、第１窓データの開始時刻から所定の時間後を「食事開始時刻」として、通常の食事に対応する心拍変化を表す特徴量を算する。
【００４９】
ここで、通常の食事に関する特徴量の一例について説明する。例えば、通常の食事に伴って食事開始後に発生する心拍数の変化には、時間経過に伴って心拍数が上昇（増加）して下降（減少）に転ずる２つのピークが存在する。すなわち、食事開始時刻からの時間経過に伴って、通常の食事が開始された後に先行して出現する心拍変化のピークである「第１ピーク」と、第１ピークに後続して出現する心拍変化のピークである「第２ピーク」とが出現する。なお、以下では、第１ピークの部分の波形を含む所定の領域のことを「第１ピーク領域」と記載し、第２ピークの部分の波形を含む所定の領域のことを「第２ピーク領域」と記載する場合がある。
【００５０】
このうち、「第１ピーク」は、食事行為に伴う心拍上昇であり、例えば、咀嚼や食道の蠕動運動に起因する心拍数上昇と推定される。また、「第２ピーク」は、例えば、食事行為により摂取された摂取物、すなわち食物等に対する消化器官（胃腸等）内の消化活動に起因する心拍数上昇と推定される。このことから、食事後には、第１ピークが現れた後に第２ピークが現れ、かつ第１ピークよりも第２ピークの方が長期間にわたる傾向にあるという知見を得ることができる。
【００５１】
これら第１ピークおよび第２ピークの傾向から、第１検知部３３は、一例として、メジアンフィルタ適用後の心拍データから、下記の特徴量を算出することができる。例えば、第１ピーク領域ａ１の面積、及び、第２ピーク領域ａ２の面積などを特徴量として算出できる。また、第１ピークへ至るまでの心拍数の上昇速度、第２ピークへ至るまでの心拍数の上昇速度、第１ピークからの心拍数の回復速度、及び、第２ピークからの心拍数の回復速度なども特徴量として算出できる。また、第１ピークを形成する波形のうち心拍数が最大の値をとるピークの振幅Ｐ１、及び、第２ピークを形成する波形のうち心拍数が最大の値をとるピークの振幅Ｐ２を特徴量として算出できる。また、食事開始時刻を始点としたとき、ピークの振幅Ｐ１が計測される時刻を終点とする経過時間ｔ１、ピークの振幅Ｐ１を経た心拍数が所定値まで回復する時刻を終点とする経過時間ｔ２、ピークの振幅Ｐ２が計測される時刻を終点とする経過時間ｔ３、及び、ピークの振幅Ｐ２を経た心拍数が所定値まで回復する時刻を終点とする経過時間ｔ４などを特徴量として算出することもできる。この他、食事開始時刻以前に計測される心拍数のうち最低の値をとる食事前心拍数と、食事開始時刻以前の区間で食事前心拍数から食事開始時刻の心拍数までの心拍数の上昇幅により形成される領域の面積とを特徴量として算出することもできる。
【００５２】
このような特徴量が算出された後、第１検知部３３は、上記の特徴量がベクトル化された特徴量ベクトルを入力として食事らしさを表す確信度を出力するモデルを用いて、第１窓データのクラス分類、例えば通常の食事または非通常の食事を行うことにより、通常の食事を検知する。例えば、上記のモデルが−１から＋１までの値を出力する場合、第１検知部３３は、第１窓データごとに当該第１窓データから算出された特徴量ベクトルを上記のモデルに入力する。この結果、上記のモデルからの出力値が所定値、例えば「０」以上である場合、第１検知部３３は、当該第１窓データを通常の食事に分類する。一方、食事推定モデルからの出力値が所定値、例えば「０」未満である場合、第１検知部３３は、当該第１窓データを非通常の食事に分類する。なお、上記のモデルは、サポートベクタマシン、ブースティングやニューラルネットワークなどの任意のアルゴリズムにしたがって、部分データに正例「通常の食事」または負例「非通常の食事」の正解のラベルが付与された教師データに機械学習を実行することにより得ることができる。
【００５３】
このように、第１検知部３３は、第１窓データごとに当該第１窓データを通常の食事または非通常の食事に分類することができる。
【００５４】
第２検知部３４は、コース料理の摂取を検知する処理部である。第２検知部３４は、図１に示すように、検出部３４Ａ、設定部３４Ｂ、抽出部３４Ｃ、算出部３４Ｄおよび判定部３４Ｅを有する。
【００５５】
検出部３４Ａは、心拍データから上記の弱ピークを検出する処理部である。
【００５６】
一実施形態として、検出部３４Ａは、適用部３２によりメジアンフィルタが適用された心拍データから上記の弱ピークを検出する。例えば、検出部３４Ａは、メジアンフィルタ適用後の心拍データから検出されるピーク点で計測される心拍数と、当該ピーク点への心拍上昇が開始する開始点で計測される心拍数との差分が上記の閾値Ｔｈ１を超える弱ピークを検出する。ここで、上記の「ピーク点」の一例として、上記の心拍データの微分波形で観測される上に凸のゼロクロス点が用いられる。さらに、上記の「開始点」の一例として、ピーク点よりも前に観測される下に凸のゼロクロス点のうち心拍数が下がりきった点が用いられる。
【００５７】
設定部３４Ｂは、心拍データに第２窓を設定する。
【００５８】
一実施形態として、設定部３４Ｂは、適用部３２によりメジアンフィルタが適用された心拍データに所定の時間長、例えば９０分間を持つ第２窓を設定する。ここで言う「第２窓」は、通常の食事の摂取に伴って発生する第２ピークの心拍上昇が平常の心拍数に回復するまでの変化を捉えるための第１窓とは用途が異なる。すなわち、第２窓は、一側面として、コース料理で提供される複数の皿の食べ物が摂取されるのに伴って発生する複数の弱ピークを捉えるために用いられる。例えば、第２窓には、コース料理が摂取される場合にかかると予想される最大の時間長、例えば９０分間が設定される。
【００５９】
続いて、設定部３４Ｂは、第２窓が設定された区間に対応する部分データを切り出す。このように第２窓に対応する部分データが切り出された後、設定部３４Ｂは、前回に設定された第２窓を所定のずらし幅、例えば５分間だけシフトさせる。その上で、設定部３４Ｂは、は、シフト後の第２窓に対応する部分データを切り出す。以下、心拍データのうち第２窓に対応する部分が切り出された部分データのことを「第２窓データ」と記載する場合がある。
【００６０】
抽出部３４Ｃは、上記の第２窓データからコース料理の消化に伴って発生する心拍変化に対応する長期トレンドを抽出する処理部である。
【００６１】
ここで、上記の長期トレンドを抽出するのは、コース料理において終盤の皿の摂取に対応して現れる弱ピークに重畳する、序盤の皿の消化に対応して現れる長期トレンドの影響を心拍データから除去するためである。
【００６２】
すなわち、コース料理において提供されるメニューの順番が進むにつれてその順番よりも前に摂取された食べ物の消化活動も進む。このように、皿の料理が摂取される食事行為、例えば食道の蠕動運動等に加えて、それよりも前の順番で摂取された食べ物の消化活動が並行して行われる分、メニューの序盤に比べてメニューの終盤の方が心拍の上昇幅が大きくなりやすい傾向がある。図３の例で言えば、弱ピークの振幅は、一皿目、二皿目、三皿目の順に増加する傾向にあるので、メニューの終盤の方がメニューの序盤に比べて大きくなる。このように、序盤の皿の食べ物の消化に伴って現れる心拍変化が終盤の皿に対応して現れる弱ピークに重畳したままでは、一側面として、終盤の弱ピークから指標化される特徴量、例えば振幅や面積などが過大に評価されることがある。これが一因となって、コース料理の各皿に対応して現れる弱ピークの特徴そのものを評価してコース料理の食事を検知するのが困難になる。このことから、弱ピークに重畳する消化の心拍変化の影響を除去する側面から、第２窓データから長期トレンドが抽出される。
【００６３】
このとき、抽出部３４Ｃは、設定部３４Ｂにより心拍データから切り出される全ての第２窓データから必ずしも長期トレンドを抽出せずともかまわない。例えば、抽出部３４Ｃは、設定部３４Ｂにより第２窓データが切り出される度に、当該第２窓データと、第１検知部３３により通常の食事に分類された第１窓データとが重複するか否かを判定する。このとき、通常の食事のクラスに分類された第１窓データと第２窓データが重複する場合、第１検知部３３により既に食事が検知できているので、必ずしも改めてコース料理の食事として検知し直さずともかまわない。一方、通常の食事のクラスに分類された第１窓データと第２窓データが重複しない場合、第１窓データから算出される通常の食事の特徴量では評価されづらいコース料理の特徴が見逃されている可能性が残る。このため、抽出部３４Ｃは、第２窓データに含まれる弱ピークの個数が所定数、例えば「３」以上であるか否かをさらに判定する。このとき、第２窓データに含まれる弱ピークの個数が所定数未満である場合、複数の皿の食べ物が摂食されていない可能性が高まる。この場合、コース料理の食事が行われていないと識別し、以降の処理を中止することができる。一方、第２窓データに含まれる弱ピークの個数が所定数以上である場合、複数の皿の食べ物が摂食された可能性が高まる。この場合、上記の長期トレンドの抽出が開始される。
【００６４】
例えば、抽出部３４Ｃは、第２窓データに次のような処理を行うことで長期トレンドを抽出することができる。具体的には、抽出部３４Ｃは、第２窓データに所定のフィルタ、例えばローパスフィルタを適用することにより長期トレンドに対応する心拍波形を抽出する。このとき、弱ピーク群に対応する短期トレンドの成分を除去する側面から、ローパスフィルタには、カットオフ周波数の一例として、０．００１Ｈｚを設定することができる。その後、抽出部３４Ｃは、第２窓データから抽出された長期トレンドの心拍波形に線形回帰分析を適用することにより得られる回帰直線の傾きをトレンド係数として算出する。そして、抽出部３４Ｃは、長期トレンドのトレンド係数が正の値であるか否か、すなわち長期トレンドが右肩上がりの直線であるか否かを判定する。このとき、長期トレンドのトレンド係数が正の値である場合、第２窓データから食べ物の摂食活動と共に消化活動が観測されている可能性が高まるので、コース料理の食事の検知が継続される。一方、長期トレンドのトレンド係数が正の値でない場合、第２窓データから消化活動が観測できない可能性が高まるので、コース料理の食事の検知が中断される。
【００６５】
図６は、心拍データの一例を示す図である。図６に示すグラフの縦軸は、心拍数（ｂｐｍ）を指し、横軸は、時間を指す。図６には、メジアンフィルタ適用後の心拍データＨ６が示されている。図６に示すように、心拍データＨ６からピーク点およびその開始点における心拍数の差分が閾値Ｔｈ１以上である８つの弱ピークｐ６１〜ｐ６８が検出される。このように心拍データＨ６から弱ピークの検出が行われた後、心拍データＨ６には、第２窓が設定される。
【００６６】
図７は、第２窓データの一例を示す図である。図７には、上記の心拍データＨ６と共に、心拍データＨ６に設定された第２窓Ｗ２に対応する区間がハッチングで示されている。図７に示す通り、心拍データＨ６には、コース料理が摂取される場合にかかると予想される最大の時間長、例えば９０分間程度の第２窓が設定される。これによって、心拍データＨ６から第２窓Ｗ２に対応する部分データ、すなわち第２窓データが切り出される。
【００６７】
図８は、長期トレンドの一例を示す図である。図８には、上記の心拍データＨ６のうち第２窓Ｗ２に対応する部分データが第２窓データ８０として抜粋して示されている。図８に示す第２窓データ８０は、通常の食事に分類された第１窓データと重複しないものと仮定する。図８に示すように、第２窓データ８０には、３つの弱ピークｐ６２〜ｐ６４が含まれるので、長期トレンドの抽出が実行される。すなわち、第２窓データ８０にローパスフィルタを適用することにより、３つの弱ピークｐ６２〜ｐ６４に対応する短期トレンドの成分が除去された長期トレンドの心拍波形Ｎ１が抽出される。このように抽出された長期トレンドの心拍波形Ｎ１には、線形回帰分析が適用される。
【００６８】
図９は、回帰直線の一例を示す図である。図９には、図８に示す長期トレンドの心拍波形Ｎ１に線形回帰分析を適用することにより得られた回帰直線Ｌ１が示されている。図９に示すように、長期トレンドの回帰直線Ｌ１は、右肩上がりの直線であるので、回帰直線Ｌ１の傾き、すなわちトレンド係数は、正の値として観測される。この場合、第２窓データ８０から食べ物の摂食活動と共に消化活動が観測されており、第２窓Ｗ２に対応する区間でコース料理の食事が行われる可能性が高まる。それ故、第２窓データ８０には、弱ピーク群の特徴量を算出する処理が実行される。
【００６９】
算出部３４Ｄは、弱ピーク群の特徴量を算出する処理部である。
【００７０】
一実施形態として、算出部３４Ｄは、弱ピーク群の特徴量を算出するのに先立って、第２窓データから長期トレンドを除去することができる。例えば、算出部３４Ｄは、設定部３４Ｂにより第２窓が設定されることにより切り出された第２窓データの心拍波形から、抽出部３４Ｃにより抽出された長期トレンドの心拍波形を減算することにより、弱ピーク群に対応する短期トレンドの心拍波形を算出する。このとき、算出部３４Ｄは、第２窓データに含まれる弱ピーク群の中で先頭の弱ピークの開始点の心拍数の値がゼロになるように短期トレンドの心拍波形のベースラインを調整する。例えば、算出部３４Ｄは、短期トレンドの心拍波形における各時刻の心拍数から、先頭の弱ピークの開始点における心拍数の値を減算する。このようにベースラインを調整するのは、第２窓データの心拍波形から長期トレンドの心拍波形を減算することにより、先頭の弱ピークの開始点の心拍数の値が負になることがあるからである。この場合、弱ピーク群の特徴量の１つとして、弱ピークの面積が算出される場合に先頭の弱ピークの開始点の心拍数が負の値に落ち込んだ分、先頭の弱ピークの面積が他の弱ピークの面積に比べて割り引いて評価される事態が起こり得る。これを回避する側面から、短期トレンドの心拍波形のベースラインが調整される。
【００７１】
このように短期トレンドの心拍波形のベースラインが調整された後、算出部３４Ｄは、ベースライン調整後の短期トレンドの心拍波形から弱ピークのピーク点への心拍上昇が開始する開始点および弱ピークのピーク点からの心拍降下が終了する終了点を特定する。図１０は、短期トレンドの一例を示す図である。図１０には、図８に示す第２窓データ８０の心拍波形から長期トレンドの心拍波形Ｎ１が除去された後にベースラインの調整が行われた短期トレンドの心拍波形Ｄが示されている。図１０に示すように、算出部３４Ｄは、弱ピークｐ６２〜ｐ６４ごとに、弱ピークのピーク点への心拍上昇が開始する開始点および弱ピークのピーク点からの心拍降下が終了する終了点を特定する。例えば、弱ピークｐ６２の例で言えば、三角形のマークで示される通り、弱ピークｐ６２のピーク点よりも前に遡って心拍数が下がりきる点が開始点ｐ６２ｓとして特定される。さらに、バツのマークで示される通り、弱ピークｐ６２のピーク点に後続して心拍数が下がりきる点が終了点ｐ６２ｅとして特定される。さらに、弱ピークｐ６３および弱ピークｐ６４についても同様に、開始点ｐ６３ｓおよび終了点ｐ６３ｅと、開始点ｐ６４ｓおよび終了点ｐ６４ｅとが特定される。
【００７２】
これら弱ピークの開始点および終了点が特定された後、算出部３４Ｄは、弱ピーク群の特徴量として、（１）弱ピークの面積、（２）弱ピークの出現間隔、並びに、（３）弱ピークの継続時間を算出する。
【００７３】
（１）弱ピークの面積
例えば、図１０に示す弱ピークｐ６２〜ｐ６４の例で言えば、３つの弱ピークｐ６２〜ｐ６４ごとに面積Ｓ６２〜Ｓ６４が各弱ピークｐ６２〜ｐ６４の特徴量として算出される。例えば、弱ピークｐ６２の開始点ｐ６２ｓから終了点ｐ６２ｅの終了までの区間において、短期トレンドの心拍波形ＤおよびベースラインＢＬ３により囲まれる図形の面積Ｓ６２が弱ピークｐ６２の特徴量として算出される。これと同様にして、弱ピークｐ６３の開始点ｐ６３ｓから終了点ｐ６３ｅの終了までの区間において、短期トレンドの心拍波形ＤおよびベースラインＢＬ３により囲まれる図形の面積Ｓ６３が弱ピークｐ６３の特徴量として算出される。さらに、弱ピークｐ６４の開始点ｐ６４ｓから終了点ｐ６４ｅの終了までの区間において、短期トレンドの心拍波形ＤおよびベースラインＢＬ３により囲まれる図形の面積Ｓ６４が弱ピークｐ６４の特徴量として算出される。
【００７４】
（２）弱ピークの出現間隔
また、図１０に示す弱ピークｐ６２〜ｐ６４の例で言えば、３つの弱ピークｐ６２〜ｐ６４が含まれるので、２（＝３−１）個の出現間隔が求められる。すなわち、弱ピークｐ６２の終了点ｐ６２ｅから弱ピークｐ６３の開始点ｐ６３ｓまでの期間が出現間隔Ｔ１１として算出される。これと共に、弱ピークｐ６３の終了点ｐ６３ｅから弱ピークｐ６４の開始点ｐ６４ｓまでの期間が出現間隔Ｔ１２として算出される。
【００７５】
（３）弱ピークの継続時間
さらに、図１０に示す弱ピークｐ６２〜ｐ６４の例で言えば、３つの弱ピークｐ６２〜ｐ６４ごとにその継続時間Ｃ６２〜Ｃ６４が各弱ピークｐ６２〜ｐ６４の特徴量として算出される。例えば、弱ピークｐ６２の場合、弱ピークｐ６２の開始点ｐ６２ｓから弱ピークｐ６２の終了点ｐ６２ｅの終了までの時間長が継続時間Ｃ６２として算出される。また、弱ピークｐ６３の場合、弱ピークｐ６３の開始点ｐ６３ｓから弱ピークｐ６３の終了点ｐ６３ｅの終了までの時間長が継続時間Ｃ６３として算出される。さらに、弱ピークｐ６４の場合、弱ピークｐ６４の開始点ｐ６４ｓから弱ピークｐ６４の終了点ｐ６４ｅの終了までの時間長が継続時間Ｃ６４として算出される。
【００７６】
判定部３４Ｅは、コース料理が摂取されたか否かを判定する処理部である。あくまで一例として、判定部３４Ｅは、算出部３４Ｄにより算出された弱ピーク群の特徴量が所定の条件を満たすか否かを判定する。
【００７７】
一側面として、判定部３４Ｅは、各弱ピークの面積が第１の条件を満たすか否かを判定する。例えば、判定部３４Ｅは、各弱ピークの特徴量の大小に関する順序がコース料理の各皿の摂取量の大小に関する順序と対応するか否かを判定する。すなわち、コース料理では、順番が後になるにつれて摂取量が大きい食べ物が提供される側面があるので、各皿の摂取量は、一皿目の摂取量＜二皿目の摂取量＜三皿目の摂取量といった大小関係の順序になる可能性が高い。このことから、判定部３４Ｅは、各弱ピークの面積が先頭の弱ピークから順番に増加しているか否かを判定する。例えば、図１０に示す３つの弱ピークｐ６２〜ｐ６４の例で言えば、判定部３４Ｅは、弱ピークｐ６２〜ｐ６４の面積Ｓ６２〜Ｓ６４の大小の順序が弱ピークｐ６２の面積Ｓ６２＜弱ピークｐ６３の面積Ｓ６３＜弱ピークｐ６４の面積Ｓ６４の順、すなわちコース料理の各皿で提供される摂取量の順に対応するか否かを判定する。
【００７８】
他の側面として、判定部３４Ｅは、弱ピークの出現間隔が第２の条件を満たすか否かを判定する。例えば、判定部３４Ｅは、弱ピークの出現間隔がコース料理で各皿の食べ物が提供される間隔に対応するか否かを判定する。図１０に示す３つの弱ピークｐ６２〜ｐ６４の例で言えば、判定部３４Ｅは、弱ピークの出現間隔Ｔ１１および弱ピークの出現間隔Ｔ１２が下限値Ｔｍｉｎおよび上限値Ｔｍａｘにより設定される料理のサーブ間隔以内であるか否かを判定する。
【００７９】
更なる側面として、判定部３４Ｅは、各弱ピークの継続時間が第３の条件を満たすか否かを判定する。すなわち、コース料理では、皿ごとに当該皿の食べ物が摂取され終わるまでに一定の時間が消費される。このように一皿あたりで食べ物の摂取に使用される時間のことを「摂取所要時間」と記載する場合がある。この摂取所要時間には、コース料理の一皿あたりの摂取量が定食やセットメニューなどの通常の食事全体の摂取量に比べれば少ない側面から、通常の食事が行われる所要時間よりも短い時間長を設定することができる。このことから、判定部３４Ｅは、弱ピークの継続時間が一皿当たりの摂取所要時間以内であるか否かを判定する。例えば、図１０に示す３つの弱ピークｐ６２〜ｐ６４の例で言えば、判定部３４Ｅは、弱ピークｐ６２の継続時間Ｃ６２、弱ピークｐ６３の継続時間Ｃ６３および弱ピークｐ６４の継続時間Ｃ６４が下限値Ｄｍｉｎおよび上限値Ｄｍａｘにより設定される一皿当たりの摂取所要時間以内であるか否かを判定する。
【００８０】
ここで、各弱ピークの特徴量が第１の条件を満たす場合、対象者の心拍上昇の推移がコース料理のメニューにしたがって提供される各皿の摂取量の推移に対応する可能性が高まる。また、弱ピークの出現間隔が第２の条件を満たす場合、対象者の心拍上昇の発生間隔がコース料理で各皿の食べ物が提供される間隔に対応する可能性が高まる。言い換えれば、運動や精神的要素などの食事以外の外乱が原因となって心拍上昇が発生している可能性が低くなる。さらに、各弱ピークの継続時間が第３の条件を満たす場合、対象者の心拍上昇の継続時間がコース料理で各皿の食べ物が摂取され終わるまでの期間に対応する可能性が高まる。
【００８１】
図１１は、弱ピークの一例を示す図である。図１１には、食事以外の要因、例えば会話や緊張が一因となって現れる弱ピーク群が時系列に示されている。図１１に示すように、会話や緊張が一因となって弱ピークが現れる場合、弱ピークとして現れる心拍上昇、例えば面積や振幅の大きさ、弱ピークの出現間隔、弱ピークの継続時間は、不規則となる。このため、短期トレンドの心拍波形Ｄから複数の弱ピークが検出された場合でも、第１の条件〜第３の条件の全ての条件を偶然に満たす可能性は低い。このため、第１の条件〜第３の条件を用いる条件判定により、食事以外の要因、例えば会話や緊張が一因となって現れる弱ピーク群がコース料理の食事と誤検知されるのを抑制できる。
【００８２】
これらの側面から、判定部３４Ｅは、各弱ピークの特徴量が第１の条件を満たし、弱ピークの出現間隔が第２の条件を満たし、かつ各弱ピークの継続時間が第３の条件を満たす場合、当該第２窓データにおいてコース料理が摂取されたと判定する。この場合、判定部３４Ｅは、コース料理の食事時間を算出する。例えば、図１０に示す短期トレンドの心拍波形Ｄの例で言えば、判定部３４Ｅは、先頭の弱ピークｐ６２の開始点ｐ６２ｓを食事開始時刻に設定すると共に末尾の弱ピークｐ６４のピーク点を食事終了時刻に設定する。その上で、判定部３４Ｅは、これら食事開始時刻および食事終了時刻の差分、例えば「食事終了時刻−食事開始時刻」を計算することにより、コース料理の食事時間を算出する。
【００８３】
なお、ここでは、コース料理の各皿で提供される摂取量の順序の一例として、一皿目の摂取量＜二皿目の摂取量＜三皿目の摂取量といった大小関係の順序を例示したが、コース料理の各皿で提供される摂取量の順序は、必ずしも上記の例に限定されない。
【００８４】
例えば、コース料理では、メニューによって必ずしも各皿の摂取量が上記の順序を満たさない場合がある。図１２は、弱ピークの一例を示す図である。図１２には、前菜、メイン、デザートの順に各皿が提供される場合に現れる弱ピークが時系列に示されている。例えば、前菜、メイン、デザートの各皿が提供される場合、摂取量の順序は、デザート（三皿目）の摂取量＜前菜（一皿目）の摂取量＜メイン（二皿目）の摂取量といった大小関係の順序になる。これら摂取量の順序は、各弱ピークの特徴量の大小に関する順序とも一致する。すなわち、図１２に示すように、弱ピークの面積は、デザートに対応して現れる弱ピーク、前菜に対応して現れる弱ピーク、メインに対応して現れる弱ピークの順となる。このように、コース料理のメニューも画一的でないことから、コース料理のメニューのパターンごとに各皿で提供される摂取量の順序を設定しておき、コース料理のメニューのパターンごとに各弱ピークの特徴量の大小に関する順序が当該パターンに定められた各皿の摂取量の大小に関する順序と対応するか否かを判定することもできる。この場合、コース料理のメニューのパターンのうちいずれかのパターンの順序に各弱ピークの特徴量の大小に関する順序が対応する場合、第１の条件を満たすと判定することとすればよい。
【００８５】
提供部３５は、上記のヘルスケア支援サービスを提供する処理部である。  
【００８６】
一実施形態として、提供部３５は、第１検知部３３により検知された通常の食事に関する食事時間、および、第２検知部３４により検知されたコース料理の食事に関する食事時間を記録したり、それまでに記録された食事時間から所定期間、例えば１週間などにわたる食事時間帯の一覧表を生成した上で出力したり、それまでに記録された食事時間から食習慣またはダイエットに関する分析を行った上で各種のアドバイスを出力したりする。なお、ここで挙げたヘルスケア支援サービスに対応する処理は、バックエンドで実行するサービスやアプリケーション、ＡＩ、サーバ装置３０外部のコンピュータで行われることとしてもかまわない。また、ここでは、食事時間が上記のヘルスケア支援サービスに用いられる場合を例示したが、必ずしも食事時間が上記のヘルスケア支援サービスに用いられずともよく、食事開始時刻、食事終了時刻、食事時間もしくはこれらのうち少なくともいずれか１つを上記のヘルスケア支援サービスに用いることができる。
【００８７】
図１３は、ヘルスケア支援サービスの一例を示す図である。図１３には、生活習慣モニタリングが実施される場合の出力例が示されている。なお、図１３に示す表示レイアウトは、あくまで一例であり、図１３に示される例に限定されないことは言うまでもない。  
【００８８】
図１３に示すように、１週間に含まれる日ごとに食事時間に関するタイムテーブルを表示させることができる。かかるタイムテーブルでは、通常の食事が行われた食事時間の帯と、コース料理の食事が行われた食事時間の帯との間で表示形態が区別されている。この表示形態の区別は、表示色を変えることにより実現されることとしてもよいし、フォントや塗り潰しを変えることにより実現されることとしてもかまわない。これにより、食事イベントが通常の食事またはコース料理の食事のいずれであるのかを区別させることができる。このようなタイムテーブルに加えて、生活習慣に関するアドバイス等のメッセージも表示させることができる。例えば、食事イベントの中でも夕食が夜９時以降に行われる頻度が所定の頻度、例えば週２回を超える場合、図１３に示すように、「早めに夕食をとりましょう」や「運動しましょう」などのメッセージを表示させることができる。この他、午前６時から正午までに食事イベントが存在しない日が存在する場合、「朝食をとる習慣をつけましょう」などのメッセージを表示させることができる。
【００８９】
［処理の流れ］
次に、本実施例に係るサーバ装置３０の処理の流れについて説明する。なお、ここでは、サーバ装置３０により実行される（１）ヘルスケア支援処理を説明した後に、ヘルスケア支援処理のサブルーチンとして実行される（２）第２検知処理を説明することとする。
【００９０】
（１）ヘルスケア支援処理
図１４は、実施例１に係るヘルスケア支援処理の手順を示すフローチャートである。この処理は、一例として、ウェアラブル端末１０に搭載された心拍センサ１１から心拍データが取得される度に開始される。
【００９１】
図１４に示すように、取得部３１により心拍データが取得されると（ステップＳ１０１）、適用部３２は、ステップＳ１０１で取得された心拍データに中央値を抽出するメジアンフィルタを適用する（ステップＳ１０２）。これにより、急峻なノイズを含む心拍データが心拍の性質に反しない程度に滑らかにフィルタ処理された心拍データを得ることができる。
【００９２】
続いて、第１検知部３３は、ステップＳ１０２でメジアンフィルタが適用された心拍データから通常の食事を検知する「第１検知処理」を実行する（ステップＳ１０３）。さらに、第２検知部３４は、ステップＳ１０２でメジアンフィルタが適用された心拍データからコース料理の食事を検知する「第２検知処理」を実行する（ステップＳ１０４）。
【００９３】
その後、提供部３５は、ステップＳ１０３で検知された通常の食事に関する食事時間およびステップＳ１０４で検知されたコース料理の食事に関する食事時間に基づいて上記のヘルスケア支援サービスに対応する出力、例えばタイムテーブルやアドバイスを生成して出力し（ステップＳ１０５）、処理を終了する。
【００９４】
（２）第２検知処理
図１５は、実施例１に係る第２検知処理の手順を示すフローチャートである。この処理は、一側面として、図１４に示すステップＳ１０４の処理に対応する。図１５に示すように、検出部３４Ａは、ステップＳ１０２でメジアンフィルタが適用された心拍データから検出されるピーク点で計測される心拍数と、当該ピーク点への心拍上昇が開始する開始点で計測される心拍数との差分が上記の閾値Ｔｈ１を超える弱ピークを検出する（ステップＳ２０１）。
【００９５】
続いて、設定部３４Ｂは、ステップＳ１０２でメジアンフィルタが適用された心拍データに所定の時間長、例えば９０分間を持つ第２窓を設定する（ステップＳ２０２）。これによって、メジアンフィルタが適用された心拍データから第２窓に対応する区間の部分データが第２窓データとして切り出される。
【００９６】
そして、抽出部３４Ｃは、ステップＳ２０２で第２窓が設定されることにより切り出された第２窓データと、ステップＳ１０４の第１検知処理で通常の食事に分類された第１窓データとが重複するか否かを判定する（ステップＳ２０３）。
【００９７】
このとき、通常の食事のクラスに分類された第１窓データと第２窓データが重複する場合（ステップＳ２０３Ｙｅｓ）、第１検知部３３により既に食事が検知できているので、必ずしも改めてコース料理の食事として検知し直さずともかまわない。この場合、ステップＳ２１３の処理へ移行する。
【００９８】
一方、通常の食事のクラスに分類された第１窓データと第２窓データが重複しない場合（ステップＳ２０３Ｎｏ）、第１窓データから算出される通常の食事の特徴量では評価されづらいコース料理の特徴が見逃されている可能性が残る。このため、抽出部３４Ｃは、第２窓データに含まれる弱ピークの個数が所定数、例えば「３」以上であるか否かをさらに判定する（ステップＳ２０４）。
【００９９】
このとき、第２窓データに含まれる弱ピークの個数が所定数未満である場合（ステップＳ２０４Ｎｏ）、複数の皿の食べ物が摂食されていない可能性が高まる。この場合、コース料理の食事が行われていないと識別できる。この場合、ステップＳ２１３の処理へ移行する。
【０１００】
一方、第２窓データに含まれる弱ピークの個数が所定数以上である場合（ステップＳ２０４Ｙｅｓ）、複数の皿の食べ物が摂食された可能性が高まる。この場合、抽出部３４Ｃは、ステップＳ２０２で得られた第２窓データに所定のフィルタ、例えばローパスフィルタを適用することにより長期トレンドに対応する心拍波形を抽出する（ステップＳ２０５）。
【０１０１】
続いて、抽出部３４Ｃは、ステップＳ２０５で抽出された長期トレンドの心拍波形に線形回帰分析を適用することにより得られる回帰直線の傾きが正の値であるか否か、すなわち長期トレンドが右肩上がりの直線であるか否かを判定する（ステップＳ２０６）。
【０１０２】
このとき、長期トレンドのトレンド係数が正の値でない場合（ステップＳ２０６Ｎｏ）、第２窓データから消化活動が観測できない可能性が高まる。この場合、ステップＳ２１３の処理へ移行する。
【０１０３】
ここで、長期トレンドのトレンド係数が正の値である場合（ステップＳ２０６Ｙｅｓ）、第２窓データから食べ物の摂食活動と共に消化活動が観測されている可能性が高まるので、コース料理の食事の検知が継続される。
【０１０４】
すなわち、算出部３４Ｄは、ステップＳ２０２で得られた第２窓データの心拍波形から、ステップＳ２０５で抽出された長期トレンドの心拍波形を減算することにより、弱ピーク群に対応する短期トレンドの心拍波形を算出する（ステップＳ２０７）。
【０１０５】
このとき、算出部３４Ｄは、第２窓データに含まれる弱ピーク群の中で先頭の弱ピークの開始点の心拍数の値がゼロになるように短期トレンドの心拍波形のベースラインを調整する（ステップＳ２０８）。
【０１０６】
その後、算出部３４Ｄは、ベースライン調整後の短期トレンドの心拍波形から弱ピークのピーク点への心拍上昇が開始する開始点および弱ピークのピーク点からの心拍降下が終了する終了点を特定する（ステップＳ２０９）。その上で、算出部３４Ｄは、弱ピーク群の特徴量として、弱ピークの面積、弱ピークの出現間隔、並びに、弱ピークの継続時間を算出する（ステップＳ２１０）。
【０１０７】
そして、判定部３４Ｅは、ステップＳ２１０で算出された弱ピーク群の特徴量が第１の条件、第２の条件および第３の条件を満たすか否かを判定する（ステップＳ２１１）。
【０１０８】
ここで、各弱ピーク群の特徴量が第１の条件、第２の条件および第３の条件を満たす場合（ステップＳ２１１Ｙｅｓ）、当該第２窓データにおいてコース料理が摂取されたと判定する。この場合、判定部３４Ｅは、先頭の弱ピークの開始点を食事開始時刻に設定すると共に末尾の弱ピークのピーク点を食事終了時刻に設定した上で、食事開始時刻および食事終了時刻の差分を計算することにより、コース料理の食事時間を算出する（ステップＳ２１２）。
【０１０９】
そして、メジアンフィルタが適用された心拍データに対する第２窓の設定が終了するまで（ステップＳ２１３Ｎｏ）、ステップＳ２０２の処理へ移行する。すなわち、設定部３４Ｂは、前回に設定された第２窓を所定のずらし幅だけシフトさせて設定することにより、シフト後の第２窓に対応する区間の部分データを第２窓データとして切り出す。以降、ステップＳ２０３〜ステップＳ２１２までの処理が実行される。
【０１１０】
その後、そして、メジアンフィルタが適用された心拍データに対する第２窓の設定が終了した場合（ステップＳ２１３Ｙｅｓ）、処理を終了する。
【０１１１】
［効果の一側面］
上述してきたように、本実施例に係るサーバ装置３０は、心拍データに複数のピークが含まれる場合、各ピークから算出される特徴量と、ピークの出現間隔とに基づいてコース料理が摂取されたか否かを判定する。これによって、コース料理が摂取される場合に現れる心拍変化の特徴を捉えて食事または非食事を判定することができる。したがって、本実施例に係るサーバ装置３０によれば、コース料理の食事の検知を実現できる。
【実施例２】
【０１１２】
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【０１１３】
［コース料理のパターン］
コース料理では、メニューによって必ずしも各皿の摂取量が上記の実施例１で例に挙げた順序を満たさない場合がある。図１６は、弱ピークの一例を示す図である。図１６には、前菜、スープ、メイン１、メイン２、デザートの順に各皿が提供されるフランス料理のメニューで現れる弱ピークが時系列に示されている。このメニューの場合、摂取量の大小関係の順序は、デザート（五皿目）の摂取量＜前菜（一皿目）の摂取量≒スープ（二皿目）の摂取量＜メイン１（三皿目）の摂取量≒メイン２（四皿目）の摂取量といった大小関係の順序になる。これら摂取量の順序は、図１６に示す通り、各弱ピークの特徴量の大小に関する順序とも一致する。すなわち、図１６に示すように、弱ピークの面積も、デザートに対応して現れる弱ピーク、前菜およびスープに対応して現れる弱ピーク、メイン１およびメイン２に対応して現れる弱ピークの順となる。
【０１１４】
図１７は、弱ピークの一例を示す図である。図１７には、先付、お凌ぎ、お椀、八寸、焼き物、ご飯、水菓子の順に各皿が提供される懐石料理のメニューで現れる弱ピークが時系列に示されている。このメニューの場合、摂取量の大小関係の順序は、先付（一皿目）の摂取量≒お凌ぎ（二皿目）の摂取量＜水菓子（七皿目）の摂取量＜お椀（三皿目）の摂取量≒八寸（四皿目）の摂取量＜ご飯（六皿目）の摂取量＜焼き物（五皿目）の摂取量といった大小関係の順序になる。これら摂取量の順序は、図１７に示す通り、各弱ピークの特徴量の大小に関する順序とも一致する。すなわち、図１７に示すように、弱ピークの面積も、先付およびお凌ぎに対応して現れる弱ピーク、水菓子に対応して現れる弱ピーク、お椀および八寸に対応して現れる弱ピーク、ご飯に対応して現れる弱ピーク、焼き物に対応して現れる弱ピークの順となる。
【０１１５】
図１８は、弱ピークの一例を示す図である。図１７には、前菜、メイン、デザートの順に各皿が提供されるランチコースのメニューで現れる弱ピークが時系列に示されている。このメニューの場合、摂取量の大小関係の順序は、デザート（三皿目）の摂取量＜前菜（一皿目）の摂取量＜メイン（三皿目）の摂取量といった大小関係の順序になる。これら摂取量の順序は、図１８に示す通り、各弱ピークの特徴量の大小に関する順序とも一致する。すなわち、図１８に示すように、弱ピークの面積も、デザートに対応して現れる弱ピーク、前菜に対応して現れる弱ピーク、メインに対応して現れる弱ピークの順となる。
【０１１６】
このように、コース料理のメニューも画一的でないことから、コース料理のメニューのパターンごとに各皿で提供される摂取量の順序を設定しておき、コース料理のメニューのパターンごとに各弱ピークの特徴量の大小に関する順序が当該パターンに定められた各皿の摂取量の大小に関する順序と対応するか否かを判定することもできる。この場合、コース料理のメニューのパターンのうちいずれかのパターンの順序に各弱ピークの特徴量の大小に関する順序が対応する場合、第１の条件を満たすと判定することとすればよい。
【０１１７】
［スタンドアローン］
上記の実施例１では、上記のヘルスケア支援システム１をクライアントサーバシステムとして構築される場合を例示したが、必ずしもクライアントサーバシステムとして構築されずともよい。例えば、サーバ装置３０が有する機能部により実行される図１４や図１５に示す処理は、ウェアラブル端末１０に接続されたＩｏＴデバイス２０によりスタンドアローンで実行されることとしてもかまわない。さらに、ウェアラブル端末１０及びＩｏＴデバイス２０は、必ずしも別個の装置として構成されずともよい。すなわち、心拍センサ１１を搭載するコンピュータにより、サーバ装置３０が有する機能部により実行される図１４や図１５に示す処理がスタンドアローンで実行されることとしてもかまわない。
【０１１８】
［分散および統合］
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されておらずともよい。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、取得部３１、適用部３２、第１検知部３３または第２検知部３４をサーバ装置３０の外部装置としてネットワーク経由で接続するようにしてもよい。また、取得部３１、適用部３２、第１検知部３３または検知部３４を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記のサーバ装置３０の機能を実現するようにしてもよい。
【０１１９】
［食事検知プログラム］
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図１９を用いて、上記の実施例と同様の機能を有する食事検知プログラムを実行するコンピュータの一例について説明する。
【０１２０】
図１９は、実施例１及び実施例２に係る食事検知プログラムを実行するコンピュータのハードウェア構成例を示す図である。図１９に示すように、コンピュータ１００は、操作部１１０ａと、スピーカ１１０ｂと、カメラ１１０ｃと、ディスプレイ１２０と、通信部１３０とを有する。さらに、このコンピュータ１００は、ＣＰＵ１５０と、ＲＯＭ１６０と、ＨＤＤ１７０と、ＲＡＭ１８０とを有する。これら１１０〜１８０の各部はバス１４０を介して接続される。
【０１２１】
ＨＤＤ１７０には、図１９に示すように、上記の実施例１で示した取得部３１、適用部３２、第１検知部３３および第２検知部３４と同様の機能を発揮する食事検知プログラム１７０ａが記憶される。この食事検知プログラム１７０ａは、図１に示した取得部３１、適用部３２、第１検知部３３および第２検知部３４の各構成要素と同様、統合又は分離してもかまわない。すなわち、ＨＤＤ１７０には、必ずしも上記の実施例１で示した全てのデータが格納されずともよく、処理に用いるデータがＨＤＤ１７０に格納されればよい。
【０１２２】
このような環境の下、ＣＰＵ１５０は、ＨＤＤ１７０から食事検知プログラム１７０ａを読み出した上でＲＡＭ１８０へ展開する。この結果、食事検知プログラム１７０ａは、図１９に示すように、食事検知プロセス１８０ａとして機能する。この食事検知プロセス１８０ａは、ＲＡＭ１８０が有する記憶領域のうち食事検知プロセス１８０ａに割り当てられた領域にＨＤＤ１７０から読み出した各種データを展開し、この展開した各種データを用いて各種の処理を実行する。例えば、食事検知プロセス１８０ａが実行する処理の一例として、図１４や図１５に示す処理などが含まれる。なお、ＣＰＵ１５０では、必ずしも上記の実施例１で示した全ての処理部が動作せずともよく、実行対象とする処理に対応する処理部が仮想的に実現されればよい。
【０１２３】
なお、上記の食事検知プログラム１７０ａは、必ずしも最初からＨＤＤ１７０やＲＯＭ１６０に記憶されておらずともかまわない。例えば、コンピュータ１００に挿入されるフレキシブルディスク、いわゆるＦＤ、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に食事検知プログラム１７０ａを記憶させる。そして、コンピュータ１００がこれらの可搬用の物理媒体から食事検知プログラム１７０ａを取得して実行するようにしてもよい。また、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ１００に接続される他のコンピュータまたはサーバ装置などに食事検知プログラム１７０ａを記憶させておき、コンピュータ１００がこれらから食事検知プログラム１７０ａを取得して実行するようにしてもよい。
【０１２４】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１２５】
（付記１）対象者の心拍データを取得し、
取得した前記心拍データにおいて振幅が所定の閾値を超えるピークを検出し、
前記検出したピークの数が複数である場合、前記検出したピークごとに求まるピークの振幅または面積と、前記検出したピーク間で求まるピークの出現間隔とに基づいて、前記対象者によりコース料理が摂取されたか否かを判定する、
処理をコンピュータに実行させる食事検知プログラム。
【０１２６】
（付記２）前記判定する処理は、前記検出したピークごとに求まるピークの振幅または面積の大小に関する順序が前記コース料理のメニューに含まれる各品目の摂取量の大小に関する順序と対応し、かつ前記検出したピーク間で求まるピークの出現間隔が前記コース料理のメニューで各品目が提供される間隔の範囲内であるか否かを判定する付記１に記載の食事検知プログラム。
【０１２７】
（付記３）前記判定する処理は、前記検出したピークごとに求まるピークの継続時間にさらに基づいて前記コース料理が摂取されたか否かを判定する付記１に記載の食事検知プログラム。
【０１２８】
（付記４）前記判定する処理は、前記検出したピークごとに求まるピークの継続時間が前記コース料理の一品目あたりの摂取所要時間の範囲内であるか否かを判定する付記３に記載の食事検知プログラム。
【０１２９】
（付記５）前記判定する処理は、前記心拍データの第１心拍波形にフィルタが適用された第２心拍波形が近似された直線の傾きが正の値である場合、前記コース料理が摂取されたか否かの判定を実行する付記１に記載の食事検知プログラム。
【０１３０】
（付記６）前記心拍データの第１心拍波形から前記心拍データにフィルタが適用された第２心拍波形を減算することにより、第３心拍波形を算出し、前記第３心拍波形から、前記ピークの振幅または面積と、前記ピークの出現間隔とを算出する処理を前記コンピュータに実行させる付記１に記載の食事検知プログラム。
【０１３１】
（付記７）対象者の心拍データを取得し、
取得した前記心拍データにおいて振幅が所定の閾値を超えるピークを検出し、
前記検出したピークの数が複数である場合、前記検出したピークごとに求まるピークの振幅または面積と、前記検出したピーク間で求まるピークの出現間隔とに基づいて、前記対象者によりコース料理が摂取されたか否かを判定する、
処理をコンピュータが実行する食事検知方法。
【０１３２】
（付記８）前記判定する処理は、前記検出したピークごとに求まるピークの振幅または面積の大小に関する順序が前記コース料理のメニューに含まれる各品目の摂取量の大小に関する順序と対応し、かつ前記検出したピーク間で求まるピークの出現間隔が前記コース料理のメニューで各品目が提供される間隔の範囲内であるか否かを判定する付記７に記載の食事検知方法。
【０１３３】
（付記９）前記判定する処理は、前記検出したピークごとに求まるピークの継続時間にさらに基づいて前記コース料理が摂取されたか否かを判定する付記７に記載の食事検知方法。
【０１３４】
（付記１０）前記判定する処理は、前記検出したピークごとに求まるピークの継続時間が前記コース料理の一品目あたりの摂取所要時間の範囲内であるか否かを判定する付記９に記載の食事検知方法。
【０１３５】
（付記１１）前記判定する処理は、前記心拍データの第１心拍波形にフィルタが適用された第２心拍波形が近似された直線の傾きが正の値である場合、前記コース料理が摂取されたか否かの判定を実行する付記７に記載の食事検知方法。
【０１３６】
（付記１２）前記心拍データの第１心拍波形から前記心拍データにフィルタが適用された第２心拍波形を減算することにより、第３心拍波形を算出し、前記第３心拍波形から、前記ピークの振幅または面積と、前記ピークの出現間隔とを算出する処理を前記コンピュータが実行する付記７に記載の食事検知方法。
【０１３７】
（付記１３）対象者の心拍データを取得する取得部と、
取得した前記心拍データにおいて振幅が所定の閾値を超えるピークを検出する検出部と、
前記検出したピークの数が複数である場合、前記検出したピークごとに求まるピークの振幅または面積と、前記検出したピーク間で求まるピークの出現間隔とに基づいて、前記対象者によりコース料理が摂取されたか否かを判定する判定部と、
を有する食事検知装置。
【０１３８】
（付記１４）前記判定部は、前記検出したピークごとに求まるピークの振幅または面積の大小に関する順序が前記コース料理のメニューに含まれる各品目の摂取量の大小に関する順序と対応し、かつ前記検出したピーク間で求まるピークの出現間隔が前記コース料理のメニューで各品目が提供される間隔の範囲内であるか否かを判定する付記１３に記載の食事検知装置。
【０１３９】
（付記１５）前記判定部は、前記検出したピークごとに求まるピークの継続時間にさらに基づいて前記コース料理が摂取されたか否かを判定する付記１３に記載の食事検知装置。
【０１４０】
（付記１６）前記判定部は、前記検出したピークごとに求まるピークの継続時間が前記コース料理の一品目あたりの摂取所要時間の範囲内であるか否かを判定する付記１５に記載の食事検知装置。
【０１４１】
（付記１７）前記判定部は、前記心拍データの第１心拍波形にフィルタが適用された第２心拍波形が近似された直線の傾きが正の値である場合、前記コース料理が摂取されたか否かの判定を実行する付記１３に記載の食事検知装置。
【０１４２】
（付記１８）前記心拍データの第１心拍波形から前記心拍データにフィルタが適用された第２心拍波形を減算することにより、第３心拍波形を算出し、前記第３心拍波形から、前記ピークの振幅または面積と、前記ピークの出現間隔とを算出する算出部をさらに有する付記１３に記載の食事検知装置。
【符号の説明】
【０１４３】
１    ヘルスケア支援システム
１０    ウェアラブル端末
２０    ＩｏＴデバイス
３０    サーバ装置
３１    取得部
３２    適用部
３３    第１検知部
３４    第２検知部
３４Ａ  検出部
３４Ｂ  設定部
３４Ｃ  抽出部
３４Ｄ  算出部
３４Ｅ  判定部
３５    提供部
【図１】
2019185405.tif 000003
【図２】
2019185405.tif 000004
【図３】
2019185405.tif 000005
【図４】
2019185405.tif 000006
【図５】
2019185405.tif 000007
【図６】
2019185405.tif 000008
【図７】
2019185405.tif 000009
【図８】
2019185405.tif 000010
【図９】
2019185405.tif 000011
【図１０】
2019185405.tif 000012
【図１１】
2019185405.tif 000013
【図１２】
2019185405.tif 000014
【図１３】
2019185405.tif 000015
【図１４】
2019185405.tif 000016
【図１５】
2019185405.tif 000017
【図１６】
2019185405.tif 000018
【図１７】
2019185405.tif 000019
【図１８】
2019185405.tif 000020
【図１９】
2019185405.tif 000021