【実施例1】
【0011】
図1は、本発明の実施例1の行動分類システムの主要な構成を示すブロック図である。
【0012】
本実施例の行動分類システムは、ユーザが装着するセンサデバイス1と、センサデバイス1と通信するPC2又はスマートフォン3と、ネットワーク4を介してPC2又はスマートフォン3と通信できるサーバ5と、から構成されている。センサデバイス1は、計測したセンサデータをPC2又はスマートフォン3経由でサーバ5に送信する。サーバ5は、センサデータを解析してユーザの四肢など各部位の動きを推定し、推定した部位の動きの内容から行動内容を分類する。PC2又はスマートフォン3は、解析した結果をサーバ5からダウンロードしてユーザに閲覧させることができる。
【0013】
センサデバイス1は主にマイコン(MCU:Micro Control Unit)10、加速度センサ11、メモリ12、入力部13、表示部14及び通信部15から構成されている。加速度センサ11は、常時、所定の頻度(典型的には1秒間に20〜1000回程度の回数)でユーザの動きなどによる加速度を計測する。マイコン10は、加速度センサ11が計測した加速度のデータを、通信を制御して読みだしてメモリ12に記録する。
【0014】
センサデバイス1は、ユーザの身体の所定の部位に取り付けられる。本実施例では、ユーザの前腕部の手首部分に取り付けられる例を説明する。
【0015】
メモリ12に記録したセンサデータは、マイコン10が通信部15を制御して、PC2又はスマートフォン3と無線又は有線で通信可能なタイミングで自動的に、或いはユーザの任意のタイミングで、PC2又はスマートフォン3に送信することができる。送信するデータは通信部15又はマイコン10の公知の機能によって暗号化することで、他のユーザなどに読み取られることなく送信することができる。また、加速度センサ11が計測したデータは、外部に送信するだけでなく、マイコン10に予めプログラムとして記録した簡易的な解析機能によって解析し、その結果として得られた例えば歩数又は消費カロリーなどを表示部14に表示することができる。
【0016】
PC2及びスマートフォン3は、センサデバイス1、及び、インターネットなどのネットワーク4に接続されたサーバ5と通信することができる。PC2及びスマートフォン3は、センサデバイス1から受信したセンサデータをサーバ5に転送することができ、また、サーバ5に記録されている公開された情報を表示および操作することができる。
【0017】
サーバ5は、CPU51、通信部52、メモリ54及びデータベース70から構成されている。メモリ54には、WEB表示プログラム53及び解析プログラム60が格納される。サーバ5は、PC2又はスマートフォン3から送信されたセンサデバイス1のセンサデータを解析プログラム60によって解析して人の部位の状態又は行動内容の情報に変換し、データベース70に記録する。また、サーバ5は、解析するアルゴリズム及びルール自体を生成することもできる。
【0018】
データベース70は、例えばハードディスクドライブのような記憶装置によって構成される。解析プログラム60及びWEB表示プログラム53は、この記憶装置に格納され、必要に応じてその一部又は全部がメモリ54にコピーされてもよい。
【0019】
CPU51は、解析プログラム60及びWEB表示プログラム53の処理を実行し、演算することができる。すなわち、以下の説明においてこれらのプログラムが実行する処理は、実際にはCPU51がこれらのプログラムに記述された命令に従って実行する。言い換えると、CPUがこれらのプログラムを実行することによって、後述する処理を実行する機能モジュールが実現される。なお、本実施例の機能モジュールは上記の通りCPU51がプログラムを実行することによって実現されるが、これは一例であり、別の手段、例えば専用の論理回路等によって実現されてもよい。
【0020】
通信部52は、ネットワーク4を介してPC2又はスマートフォン3といった他の機器と通信し、それらとの間でデータを送受信することができる。センサデバイス1からPC2又はスマートフォン3を介して受信した加速度データは、データベース70内部に記録される。
【0021】
WEB表示プログラム53は、データベース70に記録されたデータを、ネットワーク4を介してセンサデバイス1のユーザなどに公開することができる。解析プログラム60は、物理特徴量算出プログラム61、部位状態推定プログラム62、行動内容分類プログラム63、部位状態判別モデル生成プログラム64及び部位状態判別モデル選択プログラム65から構成される。データベース70は、加速度データ80、物理特徴量データ71、部位状態データ72、行動分類データ73、部位状態判別モデルデータ74、ユーザプロフィールデータ75及び部位・物理量教師データ76から構成される。
【0022】
物理特徴量算出プログラム61は、センサデバイス1で計測されて送信された加速度データ80を処理し、人の動き又は行動に関わる特徴量を算出して物理特徴量データ71に記録するプログラムであり、大量の時系列データから必要な特徴のみを抽出することができる。
【0023】
部位状態推定プログラム62は、物理特徴量データ71をもとに、ユーザのそのときの各部位の動きを推定して部位状態データ72に記録するプログラムであり、センサデバイス1の動きの特徴から、センサデバイス1を直接装着していない部位の動きについて、予め部位状態判別モデルデータ74に記録されている各部位状態の組み合わせの統計的な特徴、分布の偏り、並びに、その特徴及び分布の偏りを分けるアルゴリズムによって推定することができる。また、部位状態推定プログラム62は、解析のもととなる加速度データ80を送信したユーザの性別、体重及び身長などの身体的特徴、並びに、趣味及び職業などのライフスタイルの特徴等の属性情報を含むユーザプロフィールデータ75のうち、部位状態判別モデル選択プログラム65が選択した一部、または全てを参照して、対応する部位状態判別モデルデータ74を選択して利用する。これは、センサデバイス1の動きと各部位の動きや状態の統計的な関連が、身体的特徴及びライフスタイルによって異なる場合があるためである。
【0024】
行動内容分類プログラム63は、部位状態データ72をもとに、任意の数に行動内容を分類して行動分類データ73に記録するプログラムであり、行動の名前又は内容を定義することなく、もととなる各部位の状態の組み合わせのみによって日々の行動内容を分類することができる。
【0025】
部位状態判別モデル生成プログラム64は、予め取得した部位・物理量教師データ76をもとに、部位状態判別モデルデータ74を生成するプログラムである。部位・物理量教師データ76には、日常生活における人の各部位の動きを示すモーションデータと、同時に記録したセンサデバイス1の加速度データ、又はその加速度データから算出した物理特徴量と、が含まれている。
【0026】
例えば、本実施例の行動分類システムの運用を開始する前に、センサデバイス1を装着した複数の計測対象のユーザが日常生活と同様の行動をして、センサデバイス1がその間の複数の時刻の加速度データを取得する。それと同時に、公知の技術、例えば公知の製品であるモーションキャプチャによってそれらの計測対象のユーザの複数の部位の動きを示すモーションデータが取得される。このようにして取得された加速度データ又はそれから算出した物理特徴量と、モーションデータとが、取得された時刻に基づいて対応付けられ、部位・物理量教師データ76として記録される。
【0027】
部位状態判別モデル生成プログラム64は、部位状態と物理特徴量との関連データに基づいて、それぞれの部位状態に対応する物理特徴量の統計的な特徴、分布の偏りを見出し、それに基づいて部位状態を判別するルール又はアルゴリズムを生成し、部位状態判別モデルデータ74に記録する。
【0028】
図2は、本発明の実施例1のセンサデバイス1の外観及び加速度センサ11の典型的な配置を示す説明図である。
【0029】
加速度センサ11の配置によって、計測する3軸加速度の方向(X、Y、Z)が規定される。
図1には例として一つのセンサデバイス1のみを示したが、実際にはサーバ5はそれぞれが異なるユーザに装着された複数のセンサデバイス1からの加速度データを処理する。解析プログラム60は、それぞれのセンサデバイス1の加速度センサ11の配置が同一の場合は、各センサデバイス1で同様の計算を実施することができる。一方、それぞれのセンサデバイス1の加速度センサ11の配置が異なる場合は、センサデバイス1が、又はセンサデバイス1から加速度データを受信したサーバ5が、向きを統一するための座標系変換の処理を実行する必要がある。
【0030】
図3は、本発明の実施例1のサーバ5が実行する部位状態の推定及び行動内容分類の典型的な処理手順を示す説明図である。
【0031】
具体的には、
図3には、加速度データ80を、物理特徴量算出プログラム61、部位状態推定プログラム62、行動内容分類プログラム63の順に処理する手順を示す。物理特徴量算出プログラム61は、特徴量抽出処理110において、所定の時間単位の加速度データを切り出して演算を行う。切り出す区間は部位状態の推定をする時間に依存する。例えば、物理特徴量算出プログラム61は、部位状態の推定を行う時間単位が分単位であれば1分間毎の加速度データを演算し、秒単位であれば1秒間毎の加速度データを演算する。
【0032】
物理特徴量算出プログラム61が算出する主な特徴量は、各軸の振幅111の所定の時間区間の平均、最大、最小及び分散などの統計値、周波数112、腕の回転角θ113及びφ114の所定の時間区間の平均や最大、最小、分散などの統計値などであるが、これらに限定せず、3軸加速度から算出される一般的な統計値又は信号処理した値を特徴量として使用することができる。
【0033】
ここで、腕の回転角θ113は肩又は肘を軸として腕を上げ下げする動きの量を示すピッチ角であり、腕の回転角φ114は前腕の長手方向を軸として前腕を回転させる動き、すなわち手首をひねる動きの量を示すロール角である。上記の物理特徴量はデータベース70の物理特徴量データ71に記録される。
【0034】
部位状態推定プログラム62は、同じ時間区間又は互いに近い時間区間の物理特徴量データ71から、部位状態判別モデルデータ74を用いた部位状態の推定を行い、腕の状態121、肘の角度122、腿の状態123及び姿勢124などを推定する。それぞれの部位状態の推定に必要なデータは異なるため、部位状態推定プログラム62は、物理特徴量データ71から必要なデータのみを抽出する。また、推定したいユーザのユーザプロフィールデータ75に合致するモデルを部位状態判別モデル選択プログラム65が部位状態判別モデルデータ74から選択し、部位状態推定プログラム62がそれを使用する。腕の状態121、肘の角度122、腿の状態123及び姿勢124などの部位状態はデータベース70の部位状態データ72に記録される。
【0035】
行動内容分類プログラム63は、所定の区間の部位状態データ72を参照し、各部位の状態の組み合わせの特徴が似ているデータの集合にクラスタリングすることで、行動内容を分類する。
図3の例では、行動A131〜行動D134等に分類される。部位状態データ72に含まれるデータのうち、条件を制限せずに全ユーザのデータを対象としてクラスタリングを行ってもよいし、プロファイルが似ているユーザのグループのデータ、又は1ユーザに対象を限定してクラスタリングを行ってもよい。また時間区間についても例えば1週間など短い期間内の時間区間を対象としてクラスタリングを行ってもよいし、1年又は数年等の長い期間内の時間区間を対象としてもよい。対象を広げるほど汎用的な分類になるが、分類された結果が似通っている可能性が高まる。一方で、例えば短い期間内の時間区間、1ユーザのデータ、又はプロフィールが類似する複数ユーザのデータのみに対象を絞った場合は、結果が明確な分類として得られる可能性が高まるが、汎用性はなくなる。
【0036】
部位状態判別モデルデータ74は、予め取得した部位・物理量教師データ76から、部位状態判別モデル生成プログラム64によって生成される。部位・物理量教師データ76は、実際のユーザが取得した部位状態と物理特徴量とを対応付けるデータベースであり、部位状態判別モデル生成プログラム64は公知の機械学習などの処理によって、統計的な特徴又は分布の偏りによって判別するルール又は閾値を部位状態判別モデルデータ74として記録する。
【0037】
図4は、本発明の実施例1のサーバ5が実行する典型的な処理手順を示すフローチャートである。
【0038】
図4に示す処理は、物理特徴量算出プログラム61、部位状態判別モデル選択プログラム65、部位状態推定プログラム62及び行動内容分類プログラム63が順に処理を実行して、加速度センサデータをもとにその時間の各部位の動き及び状態を推定し、各部位の動き及び状態を用いて行動内容を分類することを特徴とする。
【0039】
サーバ5は、センサデバイス1で計測したデータをサーバ5が受信した後に処理S100から解析の処理を開始する。処理S101で、物理特徴量算出プログラム61は、受信した加速度センサデータから、解析する対象となる期間の加速度センサデータを読み出す。対象となる期間は、例えば、新たに受信した1ユーザの加速度センサデータのうち、未解析の期間である。次に、処理S102で、物理特徴量算出プログラム61は、読み出した加速度センサデータを演算し、物理特徴量を算出し、その結果をデータベース70の物理特徴量データ71に記録する。
【0040】
処理S103では、部位状態判別モデル選択プログラム65が、処理S102で読み出されたデータを計測したセンサデバイス1を身に着けていたユーザの身体情報及びライフスタイルの情報を含むユーザプロフィールデータ75を読み出して、読み出したユーザプロフィールに最も適合する部位状態判別モデル(例えば、読み出したユーザプロフィールに類似するプロフィールを持つユーザのグループから取得された部位・物理量教師データに基づいて生成された部位状態判別モデル)を部位状態判別モデルデータ74から選択する。データに対応するユーザを識別するIDは、計測した加速度センサデータに付随し、解析した結果である物理特徴量データ71及び部位状態データ72にも同様に付加される。
【0041】
処理S104では、部位状態推定プログラム62が、解析する対象区間の物理特徴量を物理特徴量データ71から読み出して、処理S103で選択した部位状態判別モデルによって部位状態を決定し、その結果を各部位ごとに部位状態データ72に記録する。
【0042】
処理S105では、行動内容分類プログラム63が、行動内容の区切りを検出するために、各部位状態を部位状態データ72から読み出し、各部位の状態の時間当たりの変化が最も大きいところを行動の変化点として検知する。このとき、行動を例えば一日単位で観測する場合においては、行動の区切りをあまり短く(例えば秒単位に)すると、人が後から区切りごとの行動を理解することが困難であるため、行動の区切りを短すぎない適切な長さ(例えば一分単位)とすることが望ましい。処理S106では、行動内容分類プログラム63が、処理S105で検知した変化点をもとに行動内容を区切ることで、各行動の区間(すなわち各行動が行われていたと推定される時間帯)を設定する。処理S107では、行動内容分類プログラム63が、区切られた行動の区間を各部位状態であるベクトルによってクラスタリングすることによって、行動内容を分類し、行動分類データ73に記録する。処理S108で本発明の典型的な処理を終了する。
【0043】
図5は、本発明の実施例1のサーバ5が部位状態判別モデルを生成するために実行する典型的な処理手順を示すフローチャートである。
【0044】
具体的には、
図5は、
図4に示した行動分類をするための処理を実行するに当たって、予め必要となる部位状態判別モデルの生成処理について示しており、処理S200から開始される。部位状態判別モデルの生成には、予め判別モデルを生成したい部位のモーションデータと、そのモーションデータと同時間にセンサデバイス1で計測した加速度データと、の双方が、統計的な判別が可能な時間長さの分だけ必要である。
【0045】
処理S201では、部位状態判別モデル生成プログラム64が、予め計測した解析する期間のモーションデータを読み出す。処理S202では、部位状態判別モデル生成プログラム64は、処理S201で取得したモーションデータと同じ時刻から始まる同じ時間長さの加速度データ80を読み出す。
【0046】
処理S203では、部位状態判別モデル生成プログラム64は、解析するモーションデータ、及び加速度データを計測した対象であるユーザのプロフィールデータ75を読み出す。ユーザのプロフィールデータ75は、モーションデータ及び加速度データを計測した対象であるユーザの身体情報及びライフスタイル等を示す属性情報である。
【0047】
このようなプロフィールによって、腕などの動きと他の直接計測していない部位との関連付けが異なる場合に、プロフィールが類似するユーザのグループごとに判別モデルを生成することによって、行動の分類の精度を上げるために、ユーザプロフィールデータ75を使用することができる。ただし、例えばそれほど高い精度が要求されない場合、又は、プロフィールを考慮しなくても十分な精度の分類が可能であると考えられる場合等には、部位状態判別モデル生成プログラム64は、ユーザプロフィールデータ75を取得せずに、全ユーザに共通する判別モデルを生成してもよい。いずれの場合も、実際に計測されたデータに基づいて判別モデルを生成することによって、精度の高い分類が可能になる。
【0048】
処理S204では、部位状態判別モデル生成プログラム64は、解析する時間単位を設定する。時間単位は、例えば、分単位又は秒単位などであり、判別したい部位の動きに適した時間単位を設定してもよいし、得たい部位状態の粒度によって設定することもできる。例えば、最終的に分類したい行動が分単位で判別される場合、部位状態も分単位で判別した結果をデータベース70に記録することが望ましい。
【0049】
処理S205では、部位状態判別モデル生成プログラム64は、処理S204で設定した時間単位で、物理特徴量を算出する。処理S206では、部位状態判別モデル生成プログラム64は、モーションデータから処理S205で設定した時間単位で定義した部位状態を読み出す。処理S205及びS206で取得した部位状態と物理特徴量を教師データ76とする。処理S207では、部位状態判別モデル生成プログラム64は、公知の機械学習などの統計的な判別分析手法によって判別モデルを生成する。部位状態判別モデル生成プログラム64は、処理S207で生成した判別モデルを、処理S203で取得したユーザのプロフィール情報と関連付けて部位状態判別モデルデータ74に記録する。
【0050】
図6は、本発明の実施例1のセンサデバイス1によって計測可能な腕の3軸加速度データから算出可能な2種類の典型的な物理特徴量を示す説明図である。
【0051】
ゼロクロス回数202は、加速度波形201が単位時間あたりに所定の閾値を超えて変化した回数を合計したものである。また、ピッチ角(θ)211はセンサデバイス1の地面に対する上げ下げによって生じる角度(言い換えると、前腕の長手方向の向き、例えば水平面と前腕の長手方向とがなす角度)であり、ロール角(φ)212は前腕の長手方向を軸とした前腕の回転角を示している。
【0052】
具体的には、センサデバイス1が計測した3軸加速度データから、重力加速度の方向(すなわち鉛直方向)に対する当該センサデバイス1の向きが計算される。例えば、時刻tにおけるX、Y、Z軸方向(
図2参照)の加速度がそれぞれx(t)、y(t)、z(t)である場合、時刻tにおけるピッチ角θ(t)及びロール角φ(t)は、それぞれ式(1)及び(2)によって計算される。
【0053】
【数1】
【0054】
【数2】
【0055】
図7は、本発明の実施例1のセンサデバイス1によって計測可能な腕の3軸加速度データから判別可能な典型的な部位状態を示す説明図である。
【0056】
部位状態として腿の状態を例示すると、腿の角度に応じた部位状態として立位状態221及び座位状態222が定義され、部位状態推定プログラム62がそれぞれの時間における腿の部位状態を判別する。日常動作において、立位と座位のそれぞれにおける腕の使い方が大きく異なるため、腕に取り付けたセンサデバイス1の3軸加速度データから統計的な判別が可能となる。また、肘の部位状態を例示すると、肘伸ばし状態223及び肘曲げ状態224等が定義される。この例でも、肘の状態に応じた腕の使い方の相違に基づいて、統計的に肘の部位状態を判別することができる。すなわち、腕の加速度データのみからは、
図6のピッチ角211しかわからないが、加速度の変化方向及び強さによって、肘を曲げて腕を動かしたことによる加速度の変化と、肘を曲げないで肩を軸として腕を動かしたことによる加速度の変化とを区別することができる。
【0057】
図8は、本発明の実施例1のサーバ5が部位状態データ72から行動の変化点を検知し、行動内容を区切る典型的な方法を示す説明図である。
【0058】
図8には、腿、肘及び腕の部位状態を使用する例を示す。この場合、腿状態231、肘状態232、腕状態233はそれぞれ連続的又は離散的な値となる。例えば、腿状態231を示すg(t)は、立位又は座位のいずれかを示す離散的な値であってもよいし、肘状態232を示すh(t)及び腕状態233を示すk(t)は、それぞれ、肘及び腕の角度を示す離散的な値であってもよい。
【0059】
行動内容分類プログラム63は、腿状態231、肘状態232及び腕状態233の総合的な変化を変化量234として算出する。変化量234を示す値f(t)は、例えば式(3)によって算出される。これは、それぞれの部位状態を示す値の変化量に所定の重み係数a、b、cを掛けて合計した値である。部位状態を示す値の変化量は、時刻tに推定された部位状態とその前の時刻t−iに推定された部位状態との差であり、iは例えば部位状態の推定を実行する時間間隔であってもよい。
【0060】
f(t)=a(g(t)-g(t-i))+b(h(t)-h(t-i))+c(k(t)-k(t-i)) ・・・(3)
【0061】
行動内容分類プログラム63は、この変化量234が所定の閾値235を超えた点を変化点236として検出する(S105)。実際の行動の内容が変化するときには部位状態も変化する可能性が高いため、部位状態の変化量に基づくことで適切に行動を区切ることができると期待される。閾値235は、変化点236の間隔が常に一定の長さ以上となるように設定するのが望ましい。ここで一定の長さとは、人が後から振り返って何をしていたかを認識可能な長さ、例えば10分以上が適している。変化点236に区切られた行動238、239などが、それぞれ行動内容を分類する区間(すなわちそれぞれの行動が行われていたと推定される時間帯)となる。
【0062】
図9は、本発明の実施例1のサーバ5が保持する物理特徴量データ71の構成例を示す説明図である。
【0063】
物理特徴量データ71の1行が、1ユーザの、1時間単位のデータを示している。ユーザID301はユーザを識別するためのIDである。日時302は、データを計測した実際の日時を示しており、部位状態の判別に適した時間単位となっている。例えば、分単位の部位状態を判別する場合においては、日時302に示すように分単位の物理特徴量を算出ことが望ましい。ゼロクロス303、304、305はそれぞれ、
図8に示した方式で算出したX、Y、Z軸のゼロクロス回数を示している。加速度波形の特徴となる物理量として、他に振幅及び微分値の時間単位中の最大、最小、平均、分散などの統計値が適用可能である。最大角度306、307はそれぞれがピッチ角(θ)211、ロール角(φ)212の単位時間中の最大値を示している。この他に、計測値の最小値、平均値、分散などの統計値を物理特徴量として適用できる。
【0064】
図10は、本発明の実施例1における部位状態判別モデルの第1の例の説明図である。
【0065】
具体的には、
図10は、立位状態221と座位状態222の物理特徴量の、物理特徴量空間内の分布241、242の例を示している。これらは、
図7に示した立位状態221と座位状態222とを判別する判別モデルとなる。
【0066】
人の日常生活において、立っている場合と座っている場合においては、手の使い方の制約が異なるため、腕の動きを示す物理特徴量に、統計的な偏りが生じる。この偏りによって、公知の機械学習による判別分析手法で物理特徴量を分布241及び242に分けることで、物理特徴量によって、腿の向きが立位状態221又は座位状態222のいずれであるかの判別が可能となる。他の部位についても同様な判別が可能である。また、この判別モデルはユーザのライフスタイル及び体格などにも依存しているため、事前に知りうるユーザプロフィール情報に基づいてユーザを互いに類似するプロフィールを持つユーザのグループに分けて判別モデルを生成することが最適である。
【0067】
図11は、本発明の実施例1における部位状態判別モデルの第2の例の説明図である。
【0068】
具体的には、
図11は、それぞれが上腕の状態である状態251、252、253の間の遷移モデルを示している。これらは、上腕の向きを判別する判別モデルであり、
図7に示した肘曲げ状態224、肘伸ばし状態223を推定するために必要となる。
【0069】
通常、前腕(本実施例では、手首)に付けた加速度センサの角度だけでは、上腕の角度を知ることができない。
図11に示す遷移モデルは、計測された加速度から特定される前腕の振りの向き及び強さによって、それぞれの上腕の状態から別の上腕の状態への遷移を定義することによって、次の上腕の向きを推定するものである。この遷移モデルは、日常動作においては、腕が下向きのときに、高確率で上腕も下向きであることに基づいて、下向きの状態252を起点としており、下向きからの振り上げの強さによって、状態251(すなわち上腕が上を向いている状態)又は状態253(すなわち上腕が横方向(水平方向)を向いている状態)への遷移を区別することができる。部位状態判別モデルデータ74は、上記のような、ある時点の部位状態をそれより前の時点の部位状態に基づいて判別するためのルールを含んでもよい。部位状態他の部位についても同様の方法で状態を判別できる場合がある。このように状態遷移の確率を考慮した判別モデルを生成することによって、高精度な行動の分類が可能になる。
【0070】
図12は、本発明の実施例1のサーバ5が保持する部位状態データ72の第1の構造例を示す説明図である。
【0071】
図12は、特に、分単位の判別に適した部位についてのデータ構造の例を示す。部位状態データ72の1行が1ユーザの時間単位ごとのデータを示している。ユーザID311は、センサデバイス1を装着するユーザを識別するための情報であり、センサデバイス1で計測した際に計測値のデータに付加され、解析後もその計測値から算出された特徴量、部位状態等の値に引き継がれる。日時312はセンサデバイス1で加速度を計測した日時をもとに付加される情報である。腿状態313は
図7に示した立位状態221と座位状態222の判別結果を2値で(例えば一方を0、もう一方を1で)示す。同様に、姿勢状態314は体が寝た状態か立っている状態か(言い換えると体全体の向き)を2値で示す。日常生活における各部位と腕の関係のデータから判別モデルを同様に作成することで、上記の腿状態313及び姿勢状態314以外の部位状態の項目を増やすことができる。
【0072】
図13は、本発明の実施例1のサーバ5が保持する部位状態データ72の第2の構造例を示す説明図である。
【0073】
図13は、特に、秒単位の判別に適した部位についてのデータ構造の例を示す。部位状態データ72の1行が1ユーザの時間単位ごとのデータを示している。ユーザID321は、
図12のユーザID311と同様に、センサデバイス1を装着するユーザを識別するための情報であり、センサデバイス1で計測した際に付加され、解析後も引き継がれる。日時322はセンサデバイス1で加速度を計測した日時をもとに付加される情報である。肘状態323は
図7に示した肘曲げ状態224、肘伸ばし状態223の判別結果を連続値すなわち角度で示す。上腕状態324は上腕の状態を離散値で(例えば、上向き、横向き、下向きのそれぞれに0、1、2といった値を割り当てることによって)示すものであり、
図11に示す判別モデル例に基づく判別結果である。日常生活における各部位と腕の関係のデータから判別モデルを同様に作成することで、上記の肘状態323及び上腕状態324以外の部位状態の項目を増やすことができる。
【0074】
図14は、本発明の実施例1のサーバ5が保持する物理特徴量データ71の構成例を示す説明図である。
【0075】
物理特徴量データ71の1行が、1ユーザの、時間単位ごとのデータを示しており、
図14は、特に、時間単位が秒単位の部位状態判別を行う場合に必要となる秒単位の物理特徴量の例を示している。
【0076】
ユーザID331はユーザを識別するためのIDである。日時332は、データを計測した実際の日時を示しており、部位状態の判別に適した時間単位となっている。振幅333、334、335はそれぞれ、
図8に示した方法で算出したX、Y、Z軸の加速度の強さの時間単位あたりの平均値を示している。加速度波形の特徴となる物理量として、他にゼロクロス回数、微分値の時間単位中の最大、最小、平均、分散などの統計値が適用可能である。平均角度336、337はそれぞれがピッチ角211、ロール角212の単位時間中の平均値を示している。この他に、ピッチ角211及びロール角212の最小値、最大値、分散などの統計値を物理特徴量として適用できる。
【0077】
図15は、本発明の実施例1のサーバ5による行動内容の分類の例を示す説明図である。
【0078】
行動内容分類プログラム63は、部位状態データ72に記録されている複数の部位状態を用いて変化点検知を行い、変化点によって区切られた行動区間ごとに、その行動区間に対応するユーザの複数の部位状態(例えば腿状態、姿勢状態、肘状態、上腕状態等)の値を要素とする部位状態ベクトルを生成する。
図15は、そのようにして生成された、例えば複数のユーザの複数の行動区間の部位状態ベクトルの部位状態ベクトル空間における分布の例を示している。
【0079】
ユーザの行動の内容によって部位状態の値の統計的な特徴や分布の偏りが異なることから、行動内容分類プログラム63は、部位状態ベクトルをクラスタリングすることによって、各行動区間の行動を分類することができる(S107)。
図15の例では、クラスタリングによって行動内容が行動分類261〜264に分類される。同一のクラスタに分類された行動区間では、部位状態の偏りが互いに類似することから、同種の(同一又は類似する内容の)行動が行われていたと推定される。クラスタリングの具体的な方法は、公知の任意の方法を使用できるため、詳細な説明を省略する。
【0080】
このような部位状態に基づく行動内容の分類によって、ひとつひとつの行動に名前を定義することなく、また、網羅性などを考慮しなくても、部位状態の特徴によって網羅的に行動内容を把握することができる。また、部位状態から実際の行動内容の名称を類推することができる。
【0081】
図16は、本発明の実施例1のサーバ5が保持する行動分類データ73のデータ構造例を示す説明図である。
【0082】
行動分類データ73の1行に1ユーザの1行動区間の行動が記録されており、部位状態の変化点によって区切られた行動区間の時間幅と、その分類のIDが記録されていることを特徴とする。ユーザID351はユーザを識別するためのIDである。開始時刻352及び終了時刻353はそれぞれ行動の1区間の開始及び終了の日時を示している。また、行動354は、分類された行動のID又は名称を記録する。
【0083】
図17は、本発明の実施例1のサーバ5が行動記録を表示するために出力する画面の構成例を示す説明図である。
【0084】
図17に示す画面401は、部位状態データ72、および行動分類データ73に基づいて、ユーザの1日の行動内容を表示するものであり、各行動区間における動きの内容を部位状態データによって具体的に示し、そこから想定される実際の行動の候補を表示し、ユーザが実際の行動内容を入力してその結果を記録することができる。行動内容表示402は、部位状態の変化によって区切られた行動区間を、行動を分類した結果によって(例えば同種の行動が行われたと推定される行動区間を同色で表示することによって)色分けし、時系列で表示できる。このような色分けは表示の方法の一例であり、行動を分類した結果を読み取れる方法である限り、例えば行動の内容を模様、記号又は文字によって区別するなど、種々の方法を採用することができる。これによって、ユーザは行動を分類した結果を容易に認識することができる。
【0085】
行動内容表示403は、行動内容表示402に表示された複数の行動区間から選択したひとつの行動区間の内容を具体的に示すものである。例えば、行動内容表示403は、選択した行動区間の行動分類が部位状態のベクトル空間のどの位置に特徴付けられるかを示す
図403Aと、部位状態から特定される人の形状によってユーザの動きを示す
図403Bと、行動の名称の候補403Cと、ユーザが実際の行動の名称を入力するフォーム403Dと、を示すことができる。
【0086】
ユーザがフォーム403Dに入力した行動の名称はデータベースなどに記録され、ユーザ本人から、他のユーザの同じ行動分類において、名称の候補として参照することができる。本画面401によって、ユーザの多様な行動を網羅的に可視化し、また、正しい名称の入力を促して収集することができる。
【0087】
例えば、
図403Aには、処理S107で生成された部位状態ベクトルのクラスタのうち、選択された行動区間の部位状態ベクトルを含むクラスタが表示される。
図403Bには、当該クラスタに属する部位状態ベクトルから特定されるユーザの各部位の状態が表示される。例えば、
図403Bに例示するように、特定されたユーザの各部位の状態から推定される、座位、上腕が横向き(水平)、かつ前腕が水平、といったユーザの体の形状が図示されてもよい。行動の名称の候補403Cには、ユーザの体の形状から推定される行動の名称の候補が表示される。例えば、座位、上腕が水平、かつ前腕が水平の場合、「PC作業」及び「車の運転」等が候補として挙げられる。
【0088】
ユーザは、これらの表示を参照して、自分がこの行動区間の時間帯に実際に行っていた行動を思い出して、その実際の行動に該当する名称が候補として表示されている場合、それを選択してフォーム403Dに入力することができる。実際の行動に該当する名称が候補として表示されていない場合、ユーザは、その名称をフォーム403Dに入力することもできる。
【0089】
このようにして入力された名称は、次回以降に表示される別の行動区間に関する名称の候補403Cとして表示することができる。具体的には、当該別の行動区間の部位状態ベクトルが、以前に名称を入力された行動区間の部位状態ベクトルと同一のクラスタに属する(すなわち同種の行動に分類された)場合、当該入力された名称を名称の候補403Cとして表示することができる。
【0090】
例えば、Web表示プログラム53が画面401を表示するための画面データを作成して出力し、サーバ5がネットワーク4を経由してその画面データをPC2又はスマートフォン3に送信し、PC2又はスマートフォン3がこの画面データに基づいて画面401を表示してもよい。この場合、PC2又はスマートフォン3が表示装置として使用される。さらに、フォーム401Dへの入力は、PC2又はスマートフォン3に対して行われてもよい。この場合、PC2又はスマートフォン3が入力装置として使用される。以下に説明する分析画面411及び421についても同様である。
【0091】
図18は、本発明の実施例1のサーバ5が行動分析の結果を表示するために出力する画面の第1の構成例を示す説明図である。
【0092】
図18に示す分析画面411は、センサデバイス1のユーザ、又はセンサデバイス1のユーザに健康アドバイスをする指導者が閲覧する画面の一例であり、センサデバイス1が計測した加速度データとは別途記録した毎日の体重増加と関係性の高い行動内容を分析してその結果を表示することを特徴とする。分析画面411は、関連する行動の割合表示412と、行動内容表示413及び414と、によって構成される。行動内容表示413は、体重増加と関連の高い行動内容が、毎日の生活の中で高い(例えば所定の値以上の)頻度で現れる時間帯を示している。この時間帯の表示と、割合表示412とを合わせて、指導者又はユーザ自身がその当時のユーザの実際の行動内容を想起することを促すことができる。
【0093】
また、行動内容表示414は、推定される行動内容の動きを人の形状で示し、その形状に対応する名称の候補と、当該行動が行われる時間の増減を促すなどのアドバイスを示すことができる。人の形状及びそれに対応する名称の候補は、
図17を参照して説明したものと同様の方法で、行動内容分類プログラム63等が特定することができる。
【0094】
推定される行動内容に対応するアドバイスは、体重変化と、体重増加に関連する行動の時間の長さなどとの相関性から生成することができる。例えば、
図18に示すユーザの行動Bの名称の候補が「PC作業」及び「車の運転」であり、これまでに記録された当該ユーザの毎日の体重増加と、行動Bが行われる時間の長さとの間の相関が、他の行動の時間との相関と比較して(又は所定の閾値より)高く、その相関が正の相関であり、かつ、当該ユーザの体重を増やさないことが望まれる場合、当該相関が高い行動Bを示す情報(図示の例では行動Bの動きを示す人の形状)が表示され、さらに、アドバイスとして、行動Bを行う時間を減らすことを促すメッセージが表示される。逆に、体重増加と行動Bが行われる時間の長さとの間に負の相関がある場合、又は、当該ユーザの体重を増やすことが望まれる場合には、行動Bを行う時間を増やすことを促すメッセージが表示される。
【0095】
上記の例では、体重増加との相関が高い行動内容として、分類された行動のいずれかと、その行動が行われる時間の長さとの組合せ(例えば行動Bが行われた時間の長さ)を挙げたが、分類された行動の内容を示す他のパラメータを使用して、体重増加との相関が高い行動内容を特定してもよい。分類された行動の内容を示す他のパラメータは、例えば、分類された行動を行うときの人物の動きの激しさ等を示すパラメータを取得できる場合には、そのようなパラメータであってもよいし、分類された行動を実行した回数を計数できる場合にはその回数であってもよい。
【0096】
図19は、本発明の実施例1のサーバ5が行動分析の結果を表示するために出力する画面の第2の構成例を示す説明図である。
【0097】
すなわち、
図19は、
図18と同様に、センサデバイス1などの計測機器以外で計測した情報と行動内容との関連を分析してその結果を表示する画面の別の一例である。疲れのように、センサでは計測困難な主観情報は、アンケート形式でユーザから収集し、収集した結果と、センサデバイス1で計測される行動内容との関連を示すことができる。
【0098】
分析画面421は、行動の割合表示422、行動内容表示424、行動時間と主観情報の変化グラフ423、及び、主観情報の入力フォーム425で構成される。行動の割合表示422及び行動内容表示424は、それぞれ
図18に示した行動の割合表示412及び行動内容表示414と同様であるため、詳細な説明は省略する。ユーザは、入力フォーム425を操作して現在の疲労の程度を示す情報を入力することができる。入力フォーム425では、図に示すようなアナログ形式での入力の他、質問形式で疲労の程度を示す情報を収集することもできる。
【0099】
変化グラフ423は、入力した主観情報との相関が最も高い行動の時間変化と、主観情報の変化とを合わせて表示する。ユーザは、これを見ることで、主観情報(例えば疲労の程度)と行動との関連性を直感的に把握することができる。
【0100】
図18及び
図19の例に示した体重増加及び疲労の程度は、ユーザの健康状態の変化を示すパラメータの例であり、サーバ5は、他のパラメータ(例えば血圧等)について上記と同様の方法で行動内容との相関を分析し、その結果を出力してもよい。上記の例では健康状態を示すパラメータと行動内容との相関の分析及びその結果に基づくアドバイスの生成はS107において行動内容分類プログラム63によって行われるが、これらの処理がS107の後で他の機能モジュール(例えば図示しない専用のプログラム)によって行われてもよい。
【0101】
図20は、センサのデータから行動内容を推定する従来の手法の典型的な例の説明図である。
【0102】
この手法は、予めゴルフのスイングなど制約条件を設定した上で、腕の動きのみを加えるものである。手順81で3軸加速度、およびジャイロなどを計測し、手順82で速度、手順83で角度などの物理量を推定し、手順84で速度や角度を合わせることで手首の軌道を推定する。手順85で予めゴルフのスイングの条件を設定するため、可動する手首及び腕以外の位置はゴルフのフォームで固定される。手順86では、ゴルフスイングのフォームに、可動する手首の位置の軌道を追加し、手首の動きに伴う腕及びゴルフクラブの動きを追加する。腕及びゴルフクラブの動きは手首の位置から容易に推定可能である。
【0103】
これに対して、
図1〜
図19に示した本発明の実施例1によれば、例えばリストバンド型センサで計測できる手首の動きの物理的特徴量(振りの強さ、角度など)と、日常生活における動作の予め取得した統計的なパターンを用いて、直接つながってはいない四肢の動き(例えば上腕や太腿)を推定する。さらに、推定した四肢の動きの組み合わせや、日常生活における四肢の動きの組み合わせの統計的な集合によって、行動内容を分類する。これによって、例えばリストバンド型センサのような日常生活において簡便に身につけることのできるセンサのデータのみを用いて、
図20に示すゴルフのスイングのような特定の行動に限らず、1日の多様な行動内容を詳細に分類し、各時間の行動内容を推定することができる。このため、生活習慣病予防のための運動指導において、改善すべき行動内容や、行動を改善した結果を可視化することができる。
【0104】
また、実施例1のセンサデバイス1は、加速度を計測して取得したデータを送信する機能を有し、行動分類のための計算及び計算結果の表示等は行わない。このため、センサデバイス1を容易に小型化、軽量化及び低消費電力化することができ、これによってセンサデバイス1を長時間装着する人物の負担を軽減することができる。また、実施例1のPC2及びスマートフォン3は、加速度データの中継装置、行動分類結果の表示装置及び行動内容の入力装置としての機能を有し、行動分類のための計算は行わないため、持ち運びの容易な小型の計算機によって実現することができる。実施例1のサーバ5は、ネットワーク4を介してセンサデバイス1、PC2及びスマートフォン3等と通信をすることで、サーバ5自体を持ち運ぶ必要がなくなるため、十分な計算能力を有する計算機を使用して人物の行動を分類する処理を高速に実行することができる。