【新規性喪失の例外の表示】特許法第30条第2項適用 本願の優先権主張の基礎となる出願(特願2013−229032号)にて提出された発明の新規性の喪失の例外の規定の適用を受けるための証明書に基づき特許法第30条第2項の規定の適用を認める
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0015】
以下、本発明の各実施形態を図面に基づいて説明する。
【0016】
[第1の実施形態]
1. 概要
2. ハードウェア構成
動作検出装置
移動通信端末
3. 機能
動作検出装置
移動通信端末
基本機能
登録機能
出力機能
4. 動作例
登録処理
出力処理
登録処理の具体例
出力処理の具体例
閾値データ/アプリデータを利用する例
所定の動作に応じて有効となるフラグを用いる例
出力データの履歴を用いる例
5. 応用例
【0017】
≪ 1. 概要 ≫
まず、
図1を用いて、本発明の第1の実施形態の概要を説明する。
図1は、本発明の第1の実施形態に係る動作検出システム1の利用例を示す図である。動作検出システム1は、ユーザが所持する玩具40に、又は、ユーザ自身に装着される動作検出装置10と、動作検出装置10と通信可能な移動通信端末20とを有する。動作検出装置10と移動通信端末20とは、Bluetooth(登録商標)やZigBee(登録商標)のような無線通信方式により、互いに通信を行うことができる。
【0018】
ユーザは、飛行機や乗用車の模型のような玩具40に、動作検出装置10を装着した状態で、玩具40を操作する。動作検出装置10は、加速度センサを内蔵しており、ユーザが玩具40を操作する際の動作を加速度データとして検出し、随時、移動通信端末20に送信する。移動通信端末20は、受信した加速度データの変化(波形)が、予め登録された波形と一致した場合に、予め登録した波形に対応した音声を出力する。移動通信端末20には、様々な波形が登録されており、それぞれの波形に対応した音声が保持されている。これにより、ユーザは、様々な玩具を操作しながら、それぞれの玩具に応じた音声を聞くことが可能となる。この結果、手軽かつ直感的な遊びにおいて、より想像力を発揮できるようになるとともに、リアリティをもって楽しむことができる。なお、動作検出装置10は、加速度センサに限られず、ジャイロセンサ、光センサ、圧力センサ等の任意のセンサを有していてもよい。
【0019】
図1(a)は、ユーザが、玩具40(飛行機の模型)に動作検出装置10を装着してこれを操作し、移動通信端末20(スマートフォン)から音声を出力させる例を表している。この例では、例えば、ユーザが、飛行機の模型を加速させる操作をすると、高回転時のエンジン音が出力され、減速させる操作をすると、低回転時のエンジン音が出力される。
【0020】
図1(b)は、ユーザが、玩具40(乗用車の模型)に動作検出装置10を装着してこれを操作し、移動通信端末20(タブレット)から音声を出力させる例を表している。この例では、乗用車の模型を前進させる操作をすると、エンジンのイグニッション音が出力され、左右に転回させる操作をすると、タイヤのスリップ音が出力される。
【0021】
図1(c)は、ユーザが、自らの腕に動作検出装置10を装着した上で、玩具40(剣の模型)を所持し、これを操作して、移動通信端末20(スピーカ)から音声を出力させる例を表している。この例では、剣の模型の振り方に応じて、異なる音が出力される。このように、ユーザは、動作検出装置10を、玩具40だけでなく、自らの腕に装着することもできる。
【0022】
なお、移動通信端末20には玩具40の種類の違いや、操作の違いに応じて複数の動作検出アプリケーションが用意されているものとする。このため、ユーザは、例えば、音声や映像が出力されることのない既存の玩具であっても、玩具の種類に応じた動作検出アプリケーションを選択させることで様々な音声を出力させることが可能となる。なお、上記説明では、移動通信端末20として、スマートフォン、タブレット、スピーカを例示したが、本発明はこれらの例に限られず、ノートPCやディスプレイ等であってもよい。
【0023】
図2は、第1の実施形態に係る動作検出装置10の外観を示す図である。
図2(a)に例示されるように、動作検出装置10は、センサや無線通信装置等を内蔵する筐体10−1と、玩具40又はユーザの腕若しくは手首に装着するためのベルト10−2を有する。ベルト10−2は、筐体10−1の相対する二側面に接続される。
図2(b)は、筐体10−1とベルト10−2の接続部10−3を拡大して示した図である。
図2(b)に例示するように、動作検出装置10は、光を取り込むための穴10−5を有していてもよい。
図2(c)は、筐体10−1とベルト10−2の接続部10−3の断面図を示している。
【0024】
なお、動作検出装置10は、玩具40又はユーザの腕若しくは手首に装着可能な構成であれば、いかなる構成であってもよく、例えば、ベルト10−2の代わりに、ケーブル、テープ、マグネット、クリップ等を用いるようにしてもよい。
【0025】
≪ 2. ハードウェア構成 ≫
図3、
図4を用いて、本発明の第1の実施形態に係る動作検出装置10及び移動通信端末20のハードウェア構成を説明する。
【0026】
≪ 動作検出装置 ≫
図3は、本発明の第1の実施形態に係る動作検出装置10のハードウェア構成を示す図である。動作検出装置10は、CPU11と、ROM12と、RAM13と、センサ14と、無線通信装置15と、電池16とを有する。
【0027】
CPU11は、動作検出装置10を制御するプログラムを実行する。ROM12は、CPU11が実行するプログラムや、プログラムの実行に必要なデータを記憶する。RAM13は、CPU11のワークエリアとして機能する。センサ14は、ユーザの動作を検出するセンサであり、例えば、加速度センサである。加速度センサは、例えば、X、Y、Z軸の三軸方向の加速度データを検出する。また、センサ14は、角速度センサや、光センサ、圧力センサであってもよい。あるいは、センサ14は、これらの任意のセンサの組み合わせであってもよい。ただし、以下では、センサ14が加速度センサである場合を例に説明する。無線通信装置15は、Bluetooth、ZigBeeその他の無線通信方式に従って通信を行う装置である。電池16は、動作検出装置10を駆動するための電力を供給する。バス17は、電池16を除く各装置を相互に接続する。
【0028】
≪ 移動通信端末 ≫
図4は、本発明の第1の実施形態に係る移動通信端末20のハードウェア構成を示す図である。
図4は、移動通信端末20が、スマートフォンである場合のハードウェア構成の一例を示している。移動通信端末20は、CPU(コンピュータ)21と、ROM22と、RAM23と、ディスプレイ24と、スピーカ25と、フラッシュメモリ26と、無線通信装置27と、入力装置28と、マイク29とを有する。
【0029】
CPU21は、移動通信端末20を制御するプログラム(例えば、玩具40の種類の違いや操作の違いに応じた複数の動作検出アプリケーション)を実行する。ROM22は、CPU21が実行するプログラムや、プログラムの実行に必要なデータを記憶する。RAM23は、CPU21のワークエリアとして機能する。ディスプレイ24は、例えば液晶パネルを駆動して映像データを出力する装置である。スピーカ25は、電気信号を物理振動に変えて、音声データを出力する装置である。フラッシュメモリ26は、ROM22と同様に、CPU21が実行するプログラムや、その実行に必要なデータを記憶する。また、フラッシュメモリ26は、音声データや映像データのように、大容量のデータを記憶するためにも使用される。無線通信装置27は、Bluetooth、ZigBeeその他の無線通信方式に従って通信を行う装置である。入力装置28は、キーボード、操作ボタン又はタッチパネルのようなデバイスであり、ユーザからの操作を受け付ける。マイク29は、音声による物理振動を電気信号に変換する装置である。バス30は、上記の各装置を相互に接続する。
【0030】
≪ 3.機能 ≫
図5、
図6を用いて、本発明の第1の実施形態に係る動作検出システム1の機能ブロックについて説明する。
【0031】
≪ 動作検出装置 ≫
はじめに、
図5を用いて、本発明の第1の実施形態に係る動作検出装置10の機能を説明する。動作検出装置10は、検出部101と通信部102とを有する。
【0032】
検出部101は、
図3のセンサ14を含み、ユーザの動作を検出し、その動作を示す動作データ(以後、検出データと呼ぶ)を、通信部102を通じて、随時、移動通信端末20に送信する。例えば、センサ14が加速度センサである場合には、検出部101は、ユーザの動作に応じた三軸方向の加速度データを検出する。
【0033】
通信部102は、
図3の無線通信装置15を含み、検出部101により検出された三軸方向の加速度データを検出データとして、無線通信により移動通信端末20に送信する(つまり、通信部102は検出データの送信部として機能する)。
【0034】
≪ 移動通信端末 ≫
次に、
図5を用いて、本発明の第1の実施形態に係る移動通信端末20の機能を説明する。なお、以下では、移動通信端末20の機能を、「基本機能」と、「登録機能」と、「出力機能」とに分けて説明する。
【0035】
≪ 基本機能 ≫
図5に示されるように、移動通信端末20は、記憶部201と、通信部202と、入力受付部203と、切替部204とを有する。
【0036】
記憶部201は、
図4のROM22又はフラッシュメモリ26を含み、関連付けデータ231と、登録波形データ232と、閾値データ233と、出力データ234と、アプリデータ235とを記憶する。
【0037】
関連付けデータ231は、ユーザの動作(ジェスチャ)と、出力すべき音声又は映像データ(出力データ)とを関連付けるデータである。関連付けデータ231は、例えば、
図8、
図9、
図10に例示されるテーブルによって保持される。
図8、
図9、
図10は、それぞれ、異なる態様の関連付けデータ231−1、231−2、231−3を保持するテーブルの一例を示す図である。
【0038】
図8に示される関連付けデータ231−1を保持するテーブルは、情報の項目として、"登録波形番号"と、"出力データ"とを有する。"登録波形番号"には、ユーザの各動作に応じて検出される三軸方向の加速度データを含み、加速度の変化を表す波形データ(登録波形データ)にそれぞれ付された番号が記載される。登録波形番号が異なる登録波形データは、ユーザの異なる動作を表している。予め登録された登録波形データの一例を
図7(a)に示す。なお、登録波形データそのものは、別途、記憶部201に記憶されている。"出力データ"には、動作検出装置10から登録波形データと同じ検出データ(三軸方向の加速度データ)が入力された場合に出力される、音声又は映像データを特定する情報が記載される。
図8の例では、音声又は映像データのファイル名が記載されている。
【0039】
図9、
図10に示される関連付けデータ231−2、231−3を保持するテーブルは、情報の項目として"条件(閾値)"と、"条件(アプリデータ)"と、"出力データ"とを有する。"条件(閾値)"には、動作検出装置10から送信される検出データ(三軸方向の加速度データ)に基づいてユーザの動作を識別するための閾値が記載される。"条件(アプリデータ)"には、別途、記憶部201に記憶されるアプリデータ235に基づいて出力データを切り替えるための条件が記載される。なお、アプリデータ235は、例えば、玩具40の状態を示し、所定の動作に応じて有効となるフラグ(玩具40が乗用車の場合にあっては、エンジンがかかった状態にあるのか、かかっていない状態にあるのかを示すフラグ等)である。あるいは、出力データとして出力された音声又は映像データの出力履歴を示すデータである。いずれにしても、アプリデータ235は、出力データを切り替えるために用いられる。"出力データ"には、動作検出装置10から、"条件(閾値)"を満たす検出データが入力され、かつ、"条件(アプリデータ)"が満たされた場合に、出力される音声又は映像データのファイル名が記載される。
【0040】
図5の説明に戻る。登録波形データ232は、関連付けデータ231−1においてユーザの動作を識別するために用いられるデータである。登録波形データ232は、所定期間内の、X軸、Y軸、Z軸方向の加速度データを含み、加速度の変化を示す波形データである。
図7(a)は、登録波形データ232の一例である。
【0041】
閾値データ233は、関連付けデータ231−2、231−3においてユーザの動作を識別するために用いられるデータである。閾値データ233は、動作検出装置10から送信される検出データ(三軸方向の加速度データ)の最大値と比較するための閾値である。閾値データ233には、
図9、
図10に示される関連付けデータ231−2、231−3に示される、閾値A、B、Cが含まれる。
【0042】
出力データ234は、音声又は映像データであり、
図8、
図9、
図10に例示されるように、任意の形式のファイルにより提供される。また、図示しないが、出力データ234は、avi、3gp、mov形式等の動画ファイルであってもよい。また、図示しないが、出力データ234は、移動通信端末20に所定のパターンの振動(バイブレーション)を発生させるための振動データであってもよい。
【0043】
アプリデータ235は、移動通信端末20上で動作する動作検出アプリケーションごとに用意され、出力データの選択に用いられるデータである。アプリデータ235には、玩具40の状態を示し所定の動作に応じて有効となるフラグや、出力データの出力履歴を示すデータが含まれる。
【0044】
通信部202は、
図4の無線通信装置27を含み、動作検出装置10との無線接続を確立し、動作検出装置10から送信される検出データを受信する(つまり、検出データの受信部として機能する)。
【0045】
入力受付部203は、
図4の入力装置28を含み、ユーザからの操作入力を受け付ける。
【0046】
切替部204は、
図4のCPU21の処理によって実現され、入力受付部203が受け付けたユーザの操作入力に応じて、移動通信端末20により実現される機能(後述する登録機能と出力機能と)を切り替える。
【0047】
≪ 登録機能 ≫
移動通信端末20の動作検出アプリケーションは、ユーザの動作に応じて検出される検出データと、予め用意された出力データ又は録音によって得られる新たな出力データとを関連付ける、登録機能を有する。登録機能を実現するため、移動通信端末20は、登録部205と、録音部206とを有する。
【0048】
登録部205は、
図4のCPU21の処理によって実現され、ユーザの動作に応じて検出される検出データを、登録波形データとして記憶部201に記憶する。また、登録波形データを表す登録波形番号を、予め用意された出力データ又は録音によって得られる新たな出力データとを関連付けて、関連付けデータ231−1としてテーブル(
図8)に追加する。
【0049】
具体的には、登録部205は、まず、入力受付部203を通じて、ユーザから、登録しようとする動作に応じて検出される検出データに付すべき番号の入力を受け付ける。入力された番号は、関連付けデータ231−1の登録波形番号として用いられる。次に、登録部205は、入力受付部203を通じて、ユーザの動作に応じて検出される検出データと関連付ける出力データを、予め用意されたものから選択するか、新たに録音するかの選択を受け付ける。ユーザが後者を選択した場合には、後述する録音部206を通じて、出力データの録音を行う。次に、登録部205は、登録しようとする動作を行うようユーザに指示し、ユーザの動作に応じて動作検出装置10によって検出された検出データを受信する。そして、登録部205は、入力された番号と関連付けて、検出データを新たな登録波形データ232として記憶部201に記憶する。最後に、登録部205は、入力された番号と、選択又は録音された出力データのファイル名とを有する新たなエントリを、関連付けデータ231−1としてテーブル(
図8)に追加する。
【0050】
録音部206は、
図4のマイク29を含み、登録部205からの指示に応じて、出力データの録音を行う。
【0051】
≪ 出力機能 ≫
移動通信端末20の動作検出アプリケーションは、動作検出装置10で検出された検出データを受信し、その検出データが所定の条件を満たすとき、所定の出力データを出力する、出力機能を有する。出力機能を実現するため、移動通信端末20は、比較部207と、選択部208と、出力部209と、アプリデータ更新部210とを有する。
【0052】
比較部207は、
図4のCPU21の処理によって実現され、動作検出装置10から受信した検出データを、登録波形データ又は閾値と比較し、比較結果を選択部208に渡す。
図6は、比較部207をさらに詳細に表す機能ブロックである。比較部207は、検出データ取得部251と、登録波形データ読込部252と、波形比較部253と、閾値データ読込部254と、閾値比較部255と、結果出力部256とを有する。
【0053】
検出データ取得部251は、動作検出装置10から受信した検出データを取得する。登録波形データ読込部252は、記憶部201に記憶された登録波形データ232を読み込む。
【0054】
波形比較部253は、検出データ取得部251が取得した検出データ(例えば、
図7(b))と、登録波形データ読込部252が読み込んだ登録波形データ(例えば、
図7(a))とを比較し、検出データと類似する登録波形データを特定する。具体的には、波形比較部253は、例えば、非特許文献1、2等に開示される既存技術によりパターンマッチングを行い、検出データと類似する登録波形データの登録波形番号を特定する。非特許文献1、2に記載の方法によれば、検出データと登録波形データとの類似度は、各データ間の「距離」によって求められる(類似度が高いほど距離が小さくなる)。なお、距離の具体的な算出方法の説明は、ここでは省略する。
【0055】
波形比較部253は、特定した登録波形番号を結果出力部256に渡す。なお、波形比較部253は、類似する登録波形データがない場合(すなわち、算出された距離がいずれも大きい場合)、対応する登録波形番号がない旨の結果を、結果出力部256に渡してもよい。あるいは、波形比較部253は、検出データと登録波形データとの間の距離によらず、常に、算出された距離が最も小さい登録波形データを特定し、その登録波形番号を、結果出力部256に渡してもよい。
【0056】
閾値データ読込部254は、記憶部201に記憶された閾値データ233を読み込む。閾値比較部255は、検出データ取得部251が取得した検出データに含まれる各軸方向の加速度データ(例えば、
図7(b))の最大値と、閾値データ読込部254が読み込んだ閾値データ233の示す、各軸の閾値A、B、Cとをそれぞれ比較する。また、比較の結果を、結果出力部256に渡す。結果出力部256は、波形比較部253又は閾値比較部255から受け取った結果を、選択部208に出力する。
【0057】
このように、比較部207は、検出データそのものに基づいて、あるいは検出データの最大値に基づいてユーザの動作が予め登録された動作のいずれと同じであるかを判定する判定部として機能する。
【0058】
図5の説明に戻る。選択部208は、
図4のCPU21の処理によって実現される。選択部208は、比較部207(結果出力部256)から結果(すなわち、登録波形番号又は閾値との比較結果)を受け取ると、関連付けデータ231(
図8〜
図10のいずれか)を参照する。また、選択部208は、必要に応じて、記憶部201に記憶されたアプリデータ235を参照する。そして、選択部208は、登録波形番号に対応する出力データ(
図8)、又は、閾値若しくはアプリデータの条件を満たす出力データ(
図9又は
図10)を選択する。そして、選択部208は、選択した出力データを、出力部209に渡す。さらに、選択部208は、比較部207(結果出力部256)から受け取った結果と、選択した出力データとを、アプリデータ更新部210に渡してもよい。
【0059】
出力部209は、
図4のディスプレイ24又はスピーカ25を含み、選択部208から受け取った出力データを出力する。
【0060】
アプリデータ更新部210は、
図4のCPU21の処理によって実現され、選択部208から受け取った結果と選択した出力データとを用いて、アプリデータ235を更新する。例えば、アプリデータ更新部210は、検出データに含まれる各軸方向の加速度データの最大値が所定の条件(閾値)を満たしたとき、フラグをONまたはOFFに設定する。あるいは、出力部209が出力した出力データのファイル名を出力履歴に追加する。
【0061】
≪ 4. 動作例 ≫
図11〜
図16を用いて、本発明の第1の実施形態に係る動作検出システム1の動作を説明する。
図11〜
図16に示される例では、ユーザの動作に応じて検出される検出データと、録音によって入力した出力データとの関連付けを行う登録処理と、ユーザの動作を識別し、識別した動作と関連付けられた出力データを出力する出力処理とを説明する。
図11〜
図16に示される例では、閾値データ233及びアプリデータ235は使用しない。従って、
図11〜
図16に示される例では、比較部207の閾値データ読込部254及び閾値比較部255、並びに、アプリデータ更新部210は利用しない。
【0062】
≪ 登録処理 ≫
図11を用いて、動作検出システム1が実行する登録処理を説明する。
図11に示される登録処理は、動作検出装置10と移動通信端末20とが無線通信により接続され、ユーザが登録処理を実行するよう移動通信端末20に指示した後に実行される。すなわち、上述した移動通信端末20の切替部204によって、移動通信端末20により実現される機能が、登録機能に切り替えられた後に実行される。
【0063】
まず、入力受付部203は、ユーザから、登録しようとする動作に応じて検出される検出データに付すべき番号の入力を受け付ける(ステップS101)。次に、入力受付部203は、ユーザから、出力データの指定方法(予め用意されたものから選択するか、新たに録音するか)の選択を受け付ける(ステップS102)。ここで、出力データを新たに録音する場合には(ステップS103のYES)、録音部206は、新たな音声の録音を行う(ステップS105)。一方、予め用意された出力データを使う場合には(ステップS103のNO)、入力受付部203は、ディスプレイ24上に表示された出力データのリストから、ユーザが選択した出力データを受け付ける(ステップS104)。
【0064】
その後、登録部205は、ディスプレイ24又はスピーカ25等を通じて、ユーザに、登録しようとする動作を行うよう指示する。登録部205は、ユーザの動作に応じて動作検出装置10の検出部101によって検出された検出データを受信する(ステップS106)。次に、登録部205は、受信した検出データを、ステップS101で受け付けた番号と関連付けて登録波形データとして記憶部201に記憶する(ステップS107)。そして、登録部205は、ステップS101で受け付けた番号と、録音された出力データ(
図8)のファイル名とを有する新たなエントリを、関連付けデータ231−1としてテーブルに追加する(ステップS108)。
【0065】
≪ 出力処理 ≫
図12を用いて、動作検出システム1が実行する出力処理を説明する。
図12に示される出力処理は、動作検出装置10と移動通信端末20とが無線通信により接続され、ユーザが出力処理を実行するよう移動通信端末20に指示した後に実行される。すなわち、上述した移動通信端末20の切替部204によって、移動通信端末20により実現される機能が、出力機能に切り替えられた後に実行される。なお、出力処理が実行される時点で、ユーザは、動作検出装置10を装着して、玩具40が操作できる状態にあるものとする。
【0066】
まず、比較部207(検出データ取得部251)は、通信部202を通じて、動作検出装置10から送信される検出データを受信する(ステップS201)。次に、比較部207(登録波形データ読込部252)は、記憶部201に記憶された登録波形データ232を読み込む(ステップS202)。次に、比較部207(波形比較部253)は、検出データと登録波形データ232とを、パターンマッチングを行うことにより比較する(ステップS203)。そして、比較部207が類似する登録波形データを特定できた場合には(ステップS204のYES)、選択部208は、関連付けデータ231を参照し、特定した登録波形データの登録波形番号に関連付けられた出力データを選択する(ステップS205)。さらに、出力部209は、ステップS205で選択された出力データを出力する(ステップS206)。一方、比較部207が類似する登録波形データを特定できなかった場合には(ステップS204のNO)、出力データを出力することなく処理を終了する。なお、上記処理は、ユーザが玩具40を操作している間、繰り返し実行される。
【0067】
≪ 登録処理の具体例 ≫
図13を用いて、動作検出システム1が実行する登録処理を、具体的に説明する。なお、以下では、
図8に例示されるテーブルに、関連付けデータが何も登録されていないものとして説明を行う。
【0068】
まず、入力受付部203は、ユーザから、登録しようとする動作に応じて検出される検出データに付すべき番号「1」の入力を受け付ける(ステップS301)。入力受付部203は、受け付けた番号「1」を、登録部205に渡す(ステップS302)。次に、入力受付部203は、ユーザから、出力データを新たに録音する旨の選択入力を受け付ける(ステップS303)。入力受付部203は、出力データを新たに録音する選択がなされた旨を、登録部205に通知する(ステップS304)。登録部205は、録音部206に、出力データの録音を開始するよう指示する(ステップS305)。録音部206は、音又は映像による通知により、ユーザに音声の入力を促した後、録音を行う(ステップS306)。録音部206は、録音したデータを、出力データ234として、記憶部201に記憶し、そのファイル名「userdata_001.aac」を登録部205に通知する(ステップS307)。
【0069】
登録部205は、出力データの録音が終了すると、ユーザの動作に応じて検出される検出データの受信が可能である旨の通知を送信するよう、通信部202に指示する(ステップS308)。通信部202は、上記通知を、動作検出装置10の通信部102に送信する(ステップS309)。通信部102は、受け取った通知を、検出部101に渡す(ステップS310)。このとき、登録部205は、並行して、ディスプレイ24又はスピーカ25等を通じて、ユーザに、登録しようとする動作を行うよう指示してもよい。
【0070】
ユーザが、玩具40を操作する動作を行う(ステップS311)。検出部101は、ユーザの動作に応じて検出部101に加わる三軸方向の加速度データを検出する(ステップS312)。検出部101は、検出した三軸方向の加速度データを、検出データとして通信部102に渡す(ステップ313)。通信部102は、検出データを移動通信端末20の通信部202に送信する(ステップS314)。通信部202は、受信した検出データを、登録部205に渡す(ステップS315)。
【0071】
さらに、ユーザが動作を継続した場合には、ステップS311〜S315と同様に、登録部205が、検出データを受け取る(ステップS316〜S320)。ステップS316〜S320と同様のステップは、この後、所定回数繰り返される。
図7(a)に示される波形データは、このようにして、一定時間の間に受け取られた検出データを表している。登録部205は、一定時間の間に受け取った検出データを、ステップS301で入力された番号「1」と関連付けられた登録波形データ232として記憶する(ステップS321)。そして、登録部205は、ステップS301で入力された番号「1」を登録波形番号とし、ステップS306で録音されたファイルを出力データ「userdata_001.aac」とする関連付けデータ231−1を、テーブル(
図8)に追加する(ステップS322)。
【0072】
≪ 出力処理の具体例 ≫
図14を用いて、動作検出システム1が実行する出力処理を具体的に説明する。
図14の出力処理に際して、ユーザは、移動通信端末20上でいずれかの動作検出アプリケーションを起動させているものとする。また、動作検出装置10と移動通信端末20とは通信可能となっており、ユーザは玩具40が操作できる状態になっているものとする。なお、以下の説明では、
図8に例示される関連付けデータ231−1を用いるものとする。
図15(a)〜(c)は、
図8の関連付けデータ231−1に含まれる、登録波形番号「1」〜「3」に対応する登録波形データ232の一例である。
【0073】
まず、動作検出装置10が装着された状態で、ユーザが玩具40を操作する動作を行う(ステップS401)。検出部101は、ユーザの動作に応じて検出部101に加わる三軸方向の加速度データを検出する(ステップS402)。検出部101は、検出した三軸方向の加速度データを、検出データとして通信部102に渡す(ステップS403)。通信部102は、検出データを、移動通信端末20の通信部202に送信する(ステップS404)。通信部202は、受信した検出データを、比較部207の検出データ取得部251に渡す(ステップS405)。
【0074】
ここで、検出データは、一定期間の間、動作検出装置10から複数回に渡って受信する。ここでの説明に用いる検出データは、一定期間の間に受信された、ひとまとまりの検出データを表すものとする。
【0075】
波形比較部253は、検出データ取得部251から、
図15(d)に示される検出データを受け取る(ステップS406)。また、波形比較部253は、登録波形データ読込部252が読み込んだ、登録波形データ(ここでは、
図15(a)〜(c)の波形データ)を受け取る(ステップS407)。そして、波形比較部253は、受け取った検出データと登録波形データとを比較する(ステップS408)。波形比較部253は、例えば、非特許文献1、2に記載の方法により、両データ間の距離を求め、
図16の「動作1」で示されるような結果を得る。ここでは、検出データ(
図15(d))と、登録波形番号「1」(すなわち
図15(a))との距離が「720」である。同様に、検出データと、登録波形番号「2」(
図15(b))との距離が「1019」であり、登録波形番号「3」(
図15(c)))との距離が「1170」である。よって、波形比較部253は、検出データとの距離が最も小さい登録波形番号「1」を、比較の結果として、結果出力部256に渡す(ステップS409)。
【0076】
選択部208は、比較部207の結果出力部256から、比較の結果である登録波形番号「1」を受け取る(ステップS410)。次に、選択部208は、関連付けデータ231を参照し、登録波形番号「1」に対応する出力データ「userdata_001.aac」を、出力すべきデータとして選択する(ステップS411)。次に、選択部208は、選択した出力データを出力するよう、出力部209に指示する(ステップS412)。出力部209は、「userdata_001.aac」を出力する(ステップS413)。
【0077】
その後、さらなるユーザの動作により、上述したステップS401〜S406と同様に、波形比較部253では、
図15(e)に例示される検出データを受け取る(ステップS414〜S419)。波形比較部253は、上述したステップS407、S408と同様に、検出データと登録波形データとを比較し、
図16の「動作2」で示される距離を算出し、最も類似する登録波形データの登録波形番号「2」を特定する(ステップS420、S421)。そして、上述したステップS409〜S413と同様の処理により、出力部209は、登録波形番号「2」に対応する出力データ「preset_001.wav」を出力する(ステップS422〜S426)。
【0078】
以後、同様に、ユーザが動作検出アプリケーションの終了を指示するまで、上記の処理は繰り返され、ユーザの動作に対応する出力データが、移動通信端末20より出力される。例えば、
図15(f)に示される検出データが検出された場合に、
図15(a)〜(c)の登録波形データとの各距離は、
図16の「動作3」で示される通りとなる。その結果、登録波形番号「3」と関連付けられた出力データ「preset_002.wav」が出力される。
【0079】
以上のように、本実施形態によれば、ユーザは、既存の玩具40に動作検出装置10を装着し、所定の動作を行うことにより、その動作に対応した音声を、移動通信端末20に出力させることができる。また、ユーザは、登録機能を用いることにより、所望の動作と所望の音声とを登録することができる。その結果、ユーザは、既存の玩具40を用いてリアリティのある遊びを経験することができる。
【0080】
≪ 閾値データ/アプリデータを利用する例 ≫
図11〜
図16の例では、閾値データ233及びアプリデータ235を使用しない場合について説明した。すなわち、比較部207の閾値データ読込部254及び閾値比較部255、並びに、アプリデータ更新部210を利用しない場合について説明した。一方、以下では、
図17〜
図19を用いて、閾値データ233及びアプリデータ235を利用し、比較部207の閾値データ読込部254及び閾値比較部255、並びに、アプリデータ更新部210を利用する例について説明する。
【0081】
図17を用いて、閾値データ233及びアプリデータ235を利用する場合の、動作検出システム1が実行する出力処理について説明する。
図17に示される出力処理は、
図12を用いて説明した出力処理と同様に、動作検出装置10と移動通信端末20とが無線通信により接続され、ユーザが出力処理を実行するよう移動通信端末20に指示した後に実行される。すなわち、上述した移動通信端末20の切替部204によって、移動通信端末20により実現される機能が、出力機能に切り替えられた後に実行される。なお、出力処理が実行される時点で、ユーザは、動作検出装置10を装着して玩具40が操作できる状態にあるものとする。
【0082】
まず、比較部207(検出データ取得部251)は、通信部202を通じて、動作検出装置10から送信される検出データを受信する(ステップS501)。次に、閾値データ読込部254は、閾値データ233(例えば、各軸の閾値A、B、C)を読み込む(ステップS502)。次に、閾値比較部255は、検出データ取得部251が取得した検出データに含まれる各軸方向の加速度データ(例えば、
図7(b))の最大値と、閾値データ読込部254が読み込んだ閾値データの各軸の閾値A、B、Cとを比較する(ステップS503)。
【0083】
次に、選択部208は、記憶部201に記憶された、アプリデータ235を読み込む(ステップS504)。次に、選択部208は、関連付けデータ231−2又は231−3を読み込む(ステップS505)。そして、条件(閾値の条件及びアプリデータの条件)が満たされた場合には(ステップS506のYES)、満たされた条件に対応する出力データを選択する(ステップS507)。そして、出力部209は、ステップS507で選択された出力データを出力する(ステップS508)。
【0084】
ステップS508の後、あるいは、ステップS506で条件が満たされなかった場合には、アプリデータ更新部210は、必要に応じてアプリデータ235を更新する(ステップS509)。
【0085】
なお、上記処理は、
図12を用いて説明した処理と同様に、ユーザが玩具40を操作している間、繰り返し実行され得る。
≪ 所定の動作に応じて有効となるフラグを用いる例 ≫
図18を用いて、閾値データ233及びアプリデータ235を用いる出力処理の具体例を説明する。ここでは、アプリデータ235として、所定の動作に応じて有効となるフラグを用いるものとする。当初、フラグはOFFに設定されているものとする。
図14を用いて説明した例と同様に、ユーザは、移動通信端末20上でいずれかの動作検出アプリケーションを起動させているものとする。また、動作検出装置10と移動通信端末20とは通信可能となっており、ユーザは玩具40が操作できる状態になっているものとする。
【0086】
まず、ユーザの動作に応じて、動作検出装置10によって検出された検出データが、移動通信端末20の検出データ取得部251により取得されるステップS601〜S605は、
図14のステップS401〜S405と同様である。閾値比較部255は、検出データ取得部251から、検出データを受け取る(ステップS606)。また、閾値比較部255は、閾値データ読込部254の読み込んだ、閾値データ(ここでは、検出データに含まれる各軸方向の加速度データに対する閾値A、B、C)を受け取る(ステップS607)。そして、閾値比較部255は、受け取った検出データに含まれる、各軸方向の加速度データの最大値と、閾値A、B、Cとを、それぞれ比較する(ステップS608)。ここでは、X軸方向の加速度データの最大値が、閾値Aを上回り、Y、Z軸方向の加速度データの最大値は、閾値B、Cを下回ったものとする。閾値比較部255は、比較の結果(X>A)を、結果出力部256に渡す(ステップS609)。
【0087】
選択部208は、比較部207の結果出力部256から、比較の結果である「X>A」を受け取る(ステップS610)。次に、選択部208は、記憶部201に記憶されたアプリデータ235(フラグ)を読み込む(ステップS611)。ここでは、フラグは「OFF」であるものとする。そして、選択部208は、関連付けデータ231−2(
図9)を参照し、条件(閾値)「X>A」と条件(アプリデータ)「フラグOFF」に対応する、出力データ「ignition.mp3」を、出力すべきデータとして選択する(ステップS612)。次に、選択部208は、選択した出力データを出力するよう、出力部209に指示する(ステップS613)。出力部209は、「ignition.mp3」を出力する(ステップS614)。
【0088】
さらに、アプリデータ更新部210は、選択部208から、比較の結果である「X>A」と、アプリデータ「フラグOFF」を受け取る(ステップS615)。そして、アプリデータ更新部210は、記憶部201に記憶されたアプリデータ235を「フラグON」に更新する(ステップS616)。なお、アプリデータ更新部210は、比較の結果が「X>A」であり、かつ、アプリデータ235として「フラグOFF」を受け取った場合にのみ、アプリデータ235を「フラグON」とする更新処理を行うものとする。
【0089】
その後、さらなるユーザの動作により、上述したステップS601〜S606と同様に、閾値比較部255が、検出データを受け取る(ステップS617〜S622)。閾値比較部255は、上述したステップS607、S608と同様に、検出データに含まれる、各軸方向の加速度データの最大値と、閾値A、B、Cとを、それぞれ比較する(ステップS623、S624)。そして、上述したステップS609、S610と同様に、比較の結果が選択部208に渡される(ステップS625、S626)。なお、ここでは、比較の結果は、「X>AかつY>B」であるものとする。
【0090】
次に、選択部208は、記憶部201に記憶されたアプリデータ235として「フラグON」を読み込む(ステップS627)。選択部208は、関連付けデータ231−2(
図9)を参照し、条件(閾値)「X>AかつY>B」と条件(アプリデータ)「フラグON」に対応する、出力データ「drift.mp3」を、出力すべきデータとして選択する(ステップS628)。次に、選択部208は、選択した出力データを出力するよう、出力部209に指示する(ステップS629)。出力部209は、「drift.mp3」を出力する(ステップS630)。
【0091】
さらに、アプリデータ更新部210は、選択部208から、比較の結果である「X>AかつY>B」と、アプリデータ235として「フラグON」を受け取る(ステップS631)。ここでは、アプリデータ更新部210は、アプリデータ235の更新を行わない。
【0092】
以上の動作により、ユーザは、例えば、乗用車の玩具に、本実施形態に係る動作検出装置10を取り付け、その玩具を操作し、本実施形態に係る移動通信端末20を通じて、本物の乗用車の動作に対応した音を楽しむことができる。
【0093】
なお、上記の動作の例では、X軸の正の方向が、乗用車の進行方向に対応し、Y軸の正の方向が、乗用車の右手方向に対応し、Z軸の正の方向が、乗用車の真上の方向に対応している。すなわち、「フラグOFF」(エンジンがかかっていない状態)である場合に、乗用車が前方に操作されると、
図9の関連付けデータ231−2に示されるように、エンジンがかかった音である「ignition.mp3」が出力されることになる。そして、「フラグON」(エンジンがかかっている状態)である場合に、さらに乗用車が前方に操作されると、エンジンの駆動音である「drive.mp3」が出力される。さらに、エンジンがかかった状態で、左右方向への操作が検出されると、ドリフトした音である「drift.mp3」が出力され、上下方向の操作が検出されると、クラッシュした音である「crash.mp3」が出力される。また、クラッシュした後は、アプリデータ更新部210により、フラグの設定がOFFにされる。
【0094】
≪ 出力データの出力履歴を用いる例 ≫
図19を用いて、閾値データ233及びアプリデータ235を用いる出力処理の異なる具体例を説明する。ここでは、アプリデータ235として、移動通信端末20が出力した出力データの出力履歴を用いるものとする。
図14、
図18を用いて説明した例と同様に、ユーザは、移動通信端末20上でいずれかの動作検出アプリケーションを起動させているものとする。また、動作検出装置10と移動通信端末20とは通信可能となっており、ユーザは玩具40が操作できる状態になっているものとする。
【0095】
まず、動作検出装置10により検出された検出データを、移動通信端末20が受信し、閾値と比較して、比較の結果を選択部208に渡すステップS701〜S710は、
図18のステップS601〜S610と同様である。なお、閾値比較部255による比較の結果も、
図18を用いて説明した例と同様に、「X>A」であるものとする。次に、選択部208は、記憶部201に記憶されたアプリデータ235(出力履歴)を読み込む(ステップS711)。ここでは、出力履歴は空(出力履歴なし)であるものとする。選択部208は、関連付けデータ231−3(
図10)を参照し、条件(閾値)「X>A」と条件(出力履歴)「履歴なし」に対応する、出力データ「preset_101.wav」を、出力すべきデータとして選択する(ステップS712)。次に、選択部208は、選択した出力データを出力するよう、出力部209に指示する(ステップS713)。出力部209は、「ignition.mp3」を出力する(ステップS714)。
【0096】
次に、アプリデータ更新部210は、選択部208から、選択された出力データのファイル名「preset_101.wav」を受け取る(ステップS715)。そして、アプリデータ更新部210は、記憶部201に記憶されたアプリデータ235に出力履歴として、「preset_101.wav」を記録する(ステップS716)。
【0097】
その後、さらなるユーザの動作により、上述したステップS701〜S716と同様の処理が繰り返され、アプリデータ235に出力履歴として、「preset_101.wav→preset_102.wav→preset_103.wav」が記録されたとする。
【0098】
上述したステップS701〜S708と同様に、閾値比較部255が、検出データを受け取ると、閾値比較部255は、検出データに含まれる、各軸方向の加速度データの最大値と、閾値A、B、Cとをそれぞれ比較する(ステップS717〜S724)。そして、上述したステップS709、S710と同様に、比較の結果が選択部208に渡される(ステップS725、S726)。なお、ここでは、比較の結果は、「X>AかつY>BかつZ>C」であるものとする。
【0099】
次に、選択部208は、記憶部201に記憶されたアプリデータ235として、出力履歴「preset_101.wav→preset_102.wav→preset_103.wav」を読み込む(ステップS727)。選択部208は、関連付けデータ231−3(
図10)を参照する。そして、条件(閾値)「X>AかつY>BかつZ>C」と条件(出力履歴)「preset_101.wav→preset_102.wav→preset_103.wav」に対応する、出力データ「preset_103.wav」と「preset_special.wav」とを、出力すべきデータとして選択する(ステップS728)。次に、選択部208は、選択した出力データを出力するよう、出力部209に指示する(ステップS729)。出力部209は、「preset_103.wav」を出力し、その後に、「preset_special.wav」を出力する(ステップS730)。
【0100】
次に、アプリデータ更新部210は、選択部208から、選択された出力データのファイル名「preset_103.wav」と「preset_special.wav」を受け取る(ステップS731)。そして、アプリデータ更新部210は、記憶部201に記憶されたアプリデータ235の出力履歴として「履歴なし」を記録する(ステップS732)。
【0101】
以上のように、ユーザは、例えば、任意の玩具40又は自分の腕に、本実施形態に係る動作検出装置10を装着した状態で、自由に玩具40を操作することで、本実施形態における移動通信端末20を通じて出力される音を楽しむことができる。上記出力履歴を用いる例では、玩具40に対して所定の順序で操作を行った場合にのみ、特別に用意された音が出力される。
【0102】
≪ 5. 応用例 ≫
以上、検出データと予め登録された登録波形データとが一致するとみなせる場合に所定の音を出力する例(
図14)と、検出データの最大値やアプリデータが所定の条件を満たす場合に所定の音を出力する例(
図18、
図19)とについて説明を行った。しかしながら、本発明は、これらの例に限られず、例えば、検出データと予め登録された登録波形データとが一致し、かつ、他の条件(例えば、閾値やアプリデータ)が満たされる場合に、所定の音を出力するようにしてもよい。一方で、本発明は、閾値条件のみを用いて検出データを判定し、所定の音を出力するようにしてもよい。
【0103】
また、上述した例では、動作検出装置10が加速度センサを有する例を用いて説明を行った。しかしながら、本発明は、動作検出装置10が光センサや圧力センサを有する場合であっても、同様に、光量又は圧力の変化を表すデータを用いて、上述した処理を実行し、同様の効果を得ることができる。
【0104】
[第2の実施形態]
上記第1の実施形態では、動作検出装置10に内蔵された加速度センサにより検出された検出データを用いることで、ユーザの動作の種類を識別し、出力する音声又は映像データを切り替える構成について説明した。しかしながら、本発明はこれに限定されず、例えば、ユーザの動作が行われている方向(動作方向)を更に加味して、出力する音声又は映像データを切り替える構成としてもよい。以下、第2の実施形態について詳細に説明する。なお、上記第1の実施形態と同様の構成要素については、同じ参照番号を付すこととし、説明を省略する。
【0105】
≪ 1. 概要 ≫
はじめに、
図20を用いて、第2の実施形態の概要を説明する。
図20は、第2の実施形態に係る動作検出システム1の利用例を示す図である。ユーザの動作の種類とユーザの動作が行われている方向とに基づいて、出力する音声又は映像データを切り替える機能として、本実施形態では、疑似ドラムセットの演奏機能を例に説明する。
【0106】
一般に、ドラムセットは、種類の異なる複数の打楽器を有し、それぞれの打楽器が、ユーザから見て横方向、奥行き方向、または高さ方向に分かれて配置されている。つまり、ユーザは、横方向、奥行き方向、または高さ方向が異なるそれぞれの方向に腕をのばし、それぞれの打楽器に対して、"叩く"という動作を行う。
【0107】
第2の実施形態に係る動作検出システム1では、実際のドラムが存在していなくても、ユーザの動作の種類(叩くという動作)と、ユーザの動作が行われている方向とに応じて、対応する打楽器の音を移動通信端末20より出力する。
【0108】
つまり、第2の実施形態に係る動作検出システム1では、まず、ユーザの腕の方向が、複数の打楽器のうちのいずれの打楽器が配置されている方向にのびているのかを判別する。そして、当該方向においてユーザによる叩くという動作を検出した場合に、当該打楽器の音に対応する音を出力する。
【0109】
図20の例では、ユーザは、動作検出装置10を、右手首の部分と左手首の部分とにそれぞれ装着した様子を示している。
図20(a)に示すように、ユーザはいすに座った状態で、動作検出装置10が装着された腕を、あたかもドラムセットを叩くかのごとく動かすだけで、移動通信端末20からは、ドラムセットを叩いた場合に発生する音が出力される。
【0110】
この結果、
図20(b)に示すように、ユーザは、実際には存在していないドラムセットを叩いて演奏するという、疑似体験を味わうことができる。
【0111】
図21は、第2の実施形態に係る動作検出装置10の外観を示す図である。
図21(a)に示すように、第2の実施形態に係る動作検出装置10は、上記第1の実施形態において
図2を用いて説明した動作検出装置10と同様に、センサや無線通信装置等を内蔵する筐体10−1と、ユーザに装着するためのベルト10−2とを有する。
【0112】
ただし、第2の実施形態に係る動作検出装置10の場合、筐体10−1は、ユーザの手首に装着することを想定した腕時計型の形状を有しており、筐体10−1の上面には、移動通信端末20との通信を指示するためのボタン10−6が設けられている。また、ベルト10−2として、シリコン製のリストバンドが用いられており、ユーザは、ワンタッチで動作検出装置10を手首に装着することができる(
図21(b))。
【0113】
≪ 2.機能 ≫
次に
図22、
図23を用いて、第2の実施形態に係る動作検出システム1の機能ブロックについて説明する。なお、ここでは、
図5、
図6に示す機能ブロックとの相違点を中心に説明を行う。
【0114】
動作検出装置10の機能ブロックのうち、上記第1の実施形態との相違点は、姿勢演算部2201を有する点である。姿勢演算部2201は、クォータニオンと呼ばれる三次元空間内の回転を表す値を演算して、これを動作検出装置10の姿勢を示すデータ(姿勢データ)として利用する。姿勢演算部2201では、検出部101において検知された加速度データと角速度データを入力として、カルマンフィルタを用いて、逐次、動作検出装置10の姿勢データを演算していく。
【0115】
姿勢演算部2201において演算された姿勢データは通信部102により移動通信端末20に送信される。なお、通信部102では、検出部101において検出された検出データもあわせて移動通信端末20に送信する。
【0116】
移動通信端末20の機能ブロックのうち、上記第1の実施形態との相違点は、関連付けデータ2221の構成、閾値データ2222の構成、及び、比較部2211の構成である。
【0117】
第2の実施形態において、関連付けデータ2221は、ユーザの動作と、ユーザの動作が行われた方向(動作方向)と、出力すべき音声又は映像データ(出力データ)とを関連付けるデータである。関連付けデータ2221は、例えば、
図24に例示されるテーブルによって保持される。
【0118】
図24に示すように、関連付けデータ2221の情報の項目には、"相対姿勢データの条件"と、"検出データの条件"と、"出力データ"とが含まれる。"相対姿勢データの条件"には、動作検出装置10より送信される姿勢データに基づいて算出される相対姿勢データ(詳細は後述)に対して、移動通信端末20が出力データを出力するための条件(動作方向を特定するための条件)が格納される。"検出データの条件"には、動作検出装置10より送信される検出データに対して、移動通信端末20が出力データを出力するための条件(動作の種類を識別するための条件)が格納される。
【0119】
"出力データ"には、相対姿勢データ及び検出データが、それぞれ"相対姿勢データの条件"に格納された条件及び"検出データの条件"に格納された条件を満たした場合に出力される出力データが格納される。なお、
図24では、ユーザの動作の種類を識別するにあたり、閾値データ2222を用いる場合について示したが、ユーザの動作の種類を識別するにあたっては、登録波形データ232を用いるようにしてもよい。また、出力データを選択するにあたっては、更に、アプリデータ235を用いるようにしてもよい。ただし、以下では説明の簡略化のため、閾値データ2222を用いる場合について説明する。
【0120】
ここで、第2の実施形態では、疑似ドラムセットの演奏を実現するにあたり、7つの打楽器を想定している。このため、"相対姿勢データの条件"は7つにわけて規定されている。
図25は、疑似ドラムセットを構成する7つの打楽器の配置を示す図である。
【0121】
図25において、平面配置2501は、疑似ドラムセットを構成する7つの打楽器の配置を、上方から見た様子を示している。また、側面配置2502は、疑似ドラムセットを構成する7つの打楽器のうち、ユーザから見て左側に位置する4つの打楽器の配置を、左側面から見た様子を示している。更に、側面配置2503は、疑似ドラムセットを構成する7つの打楽器のうち、ユーザから見て右側に位置する3つの打楽器の配置を、右側面から見た様子を示している。
【0122】
平面配置2501に示すように、7つの打楽器は、クラッシュシンバル2511、ライドシンバル2512、フロアタム2513、フロアタム2514、スネアドラム2515、クラッシュシンバル2516、ハイアットシンバル2518を含む。
【0123】
7つの打楽器の中心位置の座標は、それぞれ、
クラッシュシンバル2511=(X
1、Y
1、Z
1)、
ライドシンバル2512=(X
2、Y
2、Z
2)、
フロアタム2513=(X
3、Y
3、Z
3)、
フロアタム2514=(X
4、Y
4、Z
4)、
スネアドラム2515=(X
5、Y
5、Z
5)、
クラッシュシンバル2516=(X
6、Y
6、Z
6)、
ハイアットシンバル2518=(X
7、Y
7、Z
7)、
である。関連付けデータ2221において規定される"相対姿勢データの条件"は、これら7つの打楽器の中心位置の座標を包含するように、動作方向の範囲(つまり、閾値Q0〜Q7)が定義されている。
【0124】
図22の説明に戻る。閾値データ2222は、ユーザの動作の種類を識別するための閾値として、閾値A、B、Cを保持するとともに、ユーザの動作が行われた動作方向を識別するための閾値として、閾値Q0〜Q7を保持する。
【0125】
比較部2211は、相対姿勢データと閾値Q0〜Q7とを用いて、ユーザの動作方向が所定の動作方向であるか否かを判定する。所定の動作方向であると判定した場合、比較部2211では、例えば、動作検出装置10から受信した検出データを閾値と比較し、比較結果を選択部208に渡す。
【0126】
図23は、比較部2211を更に詳細に表す機能ブロックである。なお、
図6に示す比較部207との相違点は、姿勢データ取得部2301、相対姿勢データ算出部2302、閾値比較部2303、閾値データ読込部2304を有している点である。
【0127】
姿勢データ取得部2301は、動作検出装置10から受信した姿勢データを取得する。相対姿勢データ算出部2302は、取得した姿勢データと基準方向との差分を算出することで、相対姿勢データ(相対角度)Qを出力する。相対姿勢データ(相対角度)Qは、ユーザの動作が行われた動作方向を表している。
【0128】
閾値データ読込部2304は、記憶部201に記憶された閾値データ2222を読み込む。閾値比較部2303は、相対姿勢データ算出部2302が算出した相対姿勢データ(相対角度)Qと、閾値データ読込部2304が読み込んだ閾値データ2222(Q0〜Q7)とを比較する。比較の結果、相対姿勢データ算出部2302が算出した相対姿勢データQが、閾値データ2222により規定される"相対姿勢データの条件"を満たすと判定した場合には、いずれの条件を満たしたかを閾値比較部255に通知する。
【0129】
閾値比較部255及び結果出力部256等は、閾値比較部2303からの通知があった場合に処理を実行する。なお、閾値比較部255及び結果出力部256等の処理内容は既に説明済みであるため、ここでは説明を省略する。
【0130】
≪ 3. 動作例 ≫
次に、
図26〜
図31を用いて、第2の実施形態に係る動作検出システム1において実行される処理を説明する。具体的には、ユーザが疑似ドラムセットの演奏を体験するための準備を行う前処理と、ユーザが疑似ドラムセットの演奏を体験する演奏処理とについて説明する。
【0131】
≪ 前処理 ≫
図26は、ユーザが疑似ドラムセットの演奏を体験する準備を行うための前処理のフローチャートである。また、
図27は、前処理実行時の移動通信端末20の表示画面2700の一例を示す図である。
【0132】
移動通信端末20の電源を投入すると、ステップS2601において、移動通信端末20では、
図27(a)に示すように、ユーザに疑似ドラムセットの演奏を体験させるための動作検出アプリケーションのアイコン2701を表示する。また、アイコン2701の表示を受けてユーザがアイコン2701をタップした場合、移動通信端末20では、これを受け付ける。なお、疑似ドラムセットの演奏を体験させるための動作検出アプリケーションを、以下では、疑似ドラムアプリケーションと称することとする。
【0133】
アイコン2701のタップを受け付けた移動通信端末20では、
図27(b)に示すように、動作検出装置10と接続するか否かの問い合わせを行う。ユーザが"接続する"ボタン2702をタップした場合には、ステップS2602において、移動通信端末20は、動作検出装置10を検索する。また、動作検出装置10を検出できた場合には、動作検出装置10と無線接続するための処理を実行する。なお、
図27(b)に示す表示画面において、ユーザが"接続しない"ボタン2703をタップした場合、移動通信端末20では、
図27(a)に示す表示画面に戻る。
【0134】
ステップS2602において無線接続するための処理が完了すると、ステップS2603に進み、移動通信端末20では、無線接続が完了したことに基づく報知を行う。具体的には、
図27(c)の表示画面に示すように、動作検出装置10の手首への装着を促すメッセージを表示する。
【0135】
ステップS2604において、移動通信端末20では、ユーザより装着完了通知の入力を受け付けたか否かを判定する。具体的には、
図27(c)に示す表示画面において、"Ok"ボタン2704がタップされるまで待機し、"Ok"ボタン2704がタップされた場合には、装着完了通知の入力を受け付けたと判定し、ステップS2605に進む。なお、
図27(c)に示す表示画面において、ユーザにより"Cancel"ボタン2705がタップされた場合、移動通信端末20では、
図27(a)に示す表示画面に戻る。
【0136】
ステップS2605において、移動通信端末20では、動作検出装置10から検出データ及び姿勢データが適切に送信されうるか否かを確認するために、動作検出装置10を装着したユーザに対して、動作を促すメッセージを報知する。
図27(d)に示す表示画面は、動作検出装置10を装着したユーザに対して、動作を促すメッセージを表示した表示画面である。
【0137】
図27(d)の表示画面を表示したことに応じて、ユーザが、例えば腕を動かす動作をしたことで、動作検出装置10から検出データ及び姿勢データが送信された場合、移動通信端末20では、これを受信する。
【0138】
検出データ及び姿勢データを受信した場合、ステップS2606において、移動通信端末20では、検出データ及び姿勢データを検出したと判定し、ステップS2607に進む。ステップS2607において、移動通信端末20では、検出データ及び姿勢データを検出できたことを報知し、ステップS2608において、ユーザに対して基準方向を決定するための動作を促すメッセージを報知する。具体的には、
図27(e)に示す表示画面を表示する。
【0139】
ここで、基準方向とは、Z軸周りにおける基準となる回転角度をいう。上述したとおり、相対姿勢データ算出部2302では、姿勢データ取得部2301において取得した姿勢データを、基準方向からの相対姿勢データ(相対角度)Qに変換する。移動通信端末20では、相対姿勢データQの算出に必要な基準方向を、前処理実行時に取得する。
【0140】
なお、疑似ドラムアプリケーションは、疑似ドラムセットの演奏を体験するための動作検出アプリケーションであるため、基準方向を取得するにあたっては、ユーザに対して、フロアタム2513を叩くイメージで腕を動かすように動作を促す。
図28は、基準方向を決定する処理を説明するための図である。
【0141】
図28(a)、(b)に示すように、椅子に座った状態で、フロアタム2513を叩くイメージで、ユーザが、動作検出装置10が装着された方の腕を矢印2801方向に振り下ろす。移動通信端末20では、所定の振幅を有する検出データを取得することで、ユーザが、基準方向を決定するための動作を行ったと判定する。
【0142】
このとき、振り下ろした軌跡2802(
図28(c))により形成される面とxy平面とが交差する線の方向を基準方向とする。以降、相対姿勢データ算出部2302では、姿勢データ取得部2301において取得した姿勢データと基準方向を示す姿勢データ(Q
std)との差分(相対角度)を、相対姿勢データQとして算出する。
【0143】
このように、フロアタム2513を叩くイメージで腕を動かした際の姿勢データ(Q
std)に基づいて基準方向を決定するため、ユーザは、ドラムを構成する各打楽器の位置を、好みの位置に設定することができる。
図29は、基準方向の違いに伴う各打楽器の位置の違いを示した図である。
図29(a)は、ユーザの正面方向にフロアタム2513が位置するように、ユーザが基準方向を設定した様子を示している。一方、
図29(b)は、ユーザの正面よりやや右側の方向にフロアタム2513が位置するように、ユーザが基準方向を設定した様子を示している。また、
図29(c)は、ユーザの正面よりやや左側の方向にフロアタム2513が位置するように、ユーザが基準方向を設定した様子を示している。
【0144】
図26の説明に戻る。ステップS2609において、移動通信端末20では、基準方向を決定するための動作が行われたか否かを判定し、行われていないと判定した場合には、行われたと判定されるまで待機する。
【0145】
一方、ステップS2609において、基準方向を決定するための動作が行われたと判定された場合には、ステップS2610に進む。ステップS2610において、移動通信端末20では、基準方向を決定するための動作が行われた際の姿勢データ(Q
std)に基づいて基準方向を設定する。
【0146】
なお、移動通信端末20では、基準方向の設定が完了すると、
図27(f)に示すように、疑似ドラムセットの演奏の体験を促すメッセージを表示する。
図27(f)に示す表示画面において、"Ok"ボタン2706がタップされると前処理が終了し、後述する演奏処理が開始される。一方、ユーザにより"Cancel"ボタン2707がタップされると前処理が終了し、移動通信端末20では、
図27(a)に示す表示画面に戻る。
≪ 5. 応用例 ≫
≪ 演奏処理 ≫
次に、演奏処理について説明する。
図30は、ユーザが疑似ドラムセットの演奏を体験する演奏処理のフローチャートである。
【0147】
演奏処理が開始されると、ステップS3001において、検出データ取得部251は動作検出装置10から検出データの取得を開始する。また、姿勢データ取得部2301は、動作検出装置10から姿勢データの取得を開始する。
【0148】
ステップS3002において、相対姿勢データ算出部2302では、姿勢データ取得部2301が取得した姿勢データと、基準方向との差分を算出することで、相対姿勢データ(相対角度)Qを算出する。更に、閾値データ読込部2304では、関連付けデータ2221において"相対姿勢データの条件"として規定されている閾値Q0〜Q7を読み込む。
【0149】
ステップS3003において、閾値比較部2303では、相対姿勢データ算出部2302において算出された相対姿勢データQと、ステップS3002において読み込まれた閾値Q0〜Q7とを比較する。これにより、算出された相対姿勢データQが"相対姿勢データの条件"において規定されたいずれかの条件を満たすか否かを判定する。
【0150】
ステップS3004において、登録波形データ読込部252は、ステップS3003において満たすと判定された条件(相対姿勢データの条件)に対応付けて関連付けデータ2221に登録された閾値A、B、Cを読み込む。以降、ステップS503、S506からS508までの処理は、
図17のステップS503、S506からS508までの処理と同じであるため、ここでは説明を省略する。
【0151】
このように、移動通信端末20は、演奏処理中、検出データと姿勢データとを所定周期で読み込み、ユーザの動作及び動作が行われた動作方向を判定する。これにより、移動通信端末20では、ドラムを構成する複数の打楽器のうちのいずれの打楽器を叩くイメージで、ユーザが腕を動かしているのかを判別することが可能となり、それぞれの打楽器を叩いた場合に発生する音を出力させることができる。
【0152】
図31は、演奏処理中のユーザと、移動通信端末20からの出力との関係を示す図である。
図31(a)は、ユーザがクラッシュシンバル2511を叩くイメージで、クラッシュシンバル2511があるであろう方向において、クラッシュシンバル2511を叩く動作を行った様子を示している。この場合、移動通信端末20からは、ユーザがクラッシュシンバル2511を叩く動作を行ったタイミングで、叩く強さに応じた音量のクラッシュシンバル2511の音が出力される。
【0153】
同様に、
図31(b)は、ユーザがライドシンバル2512を叩くイメージで、ライドシンバル2512があるであろう方向において、ライドシンバル2512を叩く動作を行った様子を示している。この場合、移動通信端末20からは、ユーザがライドシンバル2512を叩く動作を行ったタイミングで、叩く強さに応じた音量のライドシンバル2512の音が出力される。
【0154】
更に、
図31(c)は、ユーザがフロアタム2513を叩くイメージで、フロアタム2513があるであろう方向において、フロアタム2513を叩く動作を行った様子を示している。この場合、移動通信端末20からは、ユーザがフロアタム2513を叩く動作を行ったタイミングで、叩く強さに応じた音量のフロアタム2513の音が出力される。
【0155】
このように、第2の実施形態によれば、ユーザの動作の種類に加え、ユーザの動作が行われている方向(動作方向)を識別して、出力すべき音声又は映像データを切り替える構成としたことで、疑似ドラムセットの演奏機能を実現することが可能になる。
【0156】
[第3の実施形態]
上記第1及び第2の実施形態では、加速度データ等を用いてユーザの動作の種類またはユーザの動作が行われた方向を識別する構成としたが、本発明はこれに限定されない。例えば、気圧センサ等を用いて、ユーザの動作が行われた高さを識別する構成としてもよい。
【0157】
また、上記第1及び第2の実施形態では、動作検出装置10を、ユーザの一方の手首に装着する場合について説明したが、動作検出装置10はユーザの両方の手首に装着するようにしてもよい。この場合、それぞれの手首に装着された動作検出装置10及びそれぞれの手首に装着された動作検出装置10と通信する1台の移動通信端末20は、上記第1及び第2の実施形態において説明した処理をそれぞれ独立して実行するものとする。
【0158】
なお、動作検出装置10をユーザの両方の手首に装着する場合、上記第1及び第2の実施形態において説明した処理の一部を共有して実行するように構成してもよい。例えば、基準方向を決定するための処理は、一方の手首に装着した動作検出装置10についてのみ実行するようにしてもよい。そして、他方の手首に装着した動作検出装置10から出力される姿勢データに基づいて相対姿勢データを算出する際に、既に設定済みの基準方向を利用するように構成してもよい。
【0159】
また、上記第2の実施形態では、動作検出システム1を疑似ドラムセットに適用した場合について説明したが、動作検出システム1の適用対象は、疑似ドラムセットに限定されず、他の打楽器群であっても、打楽器以外の楽器であってもよい。