WO2019229936A1 - 情報処理システム - Google Patents
情報処理システム Download PDFInfo
- Publication number
- WO2019229936A1 WO2019229936A1 PCT/JP2018/020980 JP2018020980W WO2019229936A1 WO 2019229936 A1 WO2019229936 A1 WO 2019229936A1 JP 2018020980 W JP2018020980 W JP 2018020980W WO 2019229936 A1 WO2019229936 A1 WO 2019229936A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- vibration
- data
- presentation
- information processing
- processing system
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
Abstract
振動センサーが検出する振動の内容を示す検出振動データを当該振動センサーから取得し、振動センサーによる振動の検出時に、当該振動に応じて発生する音声、及び振動センサーの周囲の様子を示す動画像の少なくとも一方を含む付帯データを合わせて取得し、取得した検出振動データに基づいて、ユーザーに提示する振動の内容を含んだ提示振動データを生成し、付帯データとともに記録する情報処理装置である。
Description
本発明は、ユーザーに提示する振動の内容を表す振動波形データを生成する情報処理システム、情報処理方法、及びプログラムに関する。
家庭用ゲーム機などの情報処理装置は、ユーザーに何らかのイベントの発生を通知したり、ゲームなどにおける臨場感を高めたりするために、ユーザーに振動を提示する機構を備える場合がある。具体的には、予め用意された波形データに従って振動機構を動作させることによって、ユーザーに振動を提示する。
上述した技術において、振動を提示するプログラムの開発者が提示すべき振動の波形データを一から製作するのは、手間がかかる。本発明はこのような事情を考慮してなされたものであって、その目的の一つは、ユーザーに提示するための振動波形データを容易に製作することのできる情報処理システム、情報処理方法、及びプログラムを提供することにある。
本発明に係る情報処理システムは、振動センサーと、前記振動センサーが検出する振動の内容を示す検出振動データを当該振動センサーから取得する検出振動データ取得部と、前記振動センサーによる振動の検出時に、当該振動に応じて発生する音声、及び前記振動センサーの周囲の様子を示す動画像の少なくとも一方を含む付帯データを合わせて取得する付帯データ取得部と、前記検出振動データに基づいて、ユーザーに提示する振動の内容を含んだ提示振動データを生成し、前記付帯データとともに記録する提示振動データ生成部と、を含むことを特徴とする。
本発明に係る情報処理方法は、振動センサーが検出する振動の内容を示す検出振動データを当該振動センサーから取得するステップと、前記振動センサーによる振動の検出時に、当該振動に応じて発生する音声、及び前記振動センサーの周囲の様子を示す動画像の少なくとも一方を含む付帯データを合わせて取得するステップと、前記検出振動データに基づいて、ユーザーに提示する振動の内容を含んだ提示振動データを生成し、前記付帯データとともに記録するステップと、を含むことを特徴とする。
本発明に係るプログラムは、振動センサーが検出する振動の内容を示す検出振動データを当該振動センサーから取得するステップと、前記振動センサーによる振動の検出時に、当該振動に応じて発生する音声、及び前記振動センサーの周囲の様子を示す動画像の少なくとも一方を含む付帯データを合わせて取得するステップと、前記検出振動データに基づいて、ユーザーに提示する振動の内容を含んだ提示振動データを生成し、前記付帯データとともに記録するステップと、をコンピュータに実行させるためのプログラムである。このプログラムは、コンピュータ読み取り可能で非一時的な情報記憶媒体に格納されて提供されてよい。
以下、本発明の実施の形態について図面を参照しながら説明する。
本発明の一実施形態に係る情報処理システム1は、情報処理装置10と、表示装置14と、操作デバイス15と、振動デバイス16と、サンプリングデバイス20と、を含んで構成されている。本実施形態に係る情報処理システム1は、アプリケーションプログラムを開発する開発者(以下、単に開発者という)が、そのアプリケーションプログラムを利用するエンドユーザー(以下、単にユーザーという)に提示するための振動データ(提示振動データ)を制作するために使用される。すなわち、本実施形態では、開発者が提示振動データを制作する制作者となる。
情報処理装置10は、パーソナルコンピュータ等であって、図1に示すように、制御部11と、記憶部12と、インタフェース部13と、を含んで構成されている。
制御部11は、CPU等のプログラム制御デバイスを含み、記憶部12に格納されたプログラムに従って各種の情報処理を実行する。この制御部11が実行する処理の具体例については、後に詳しく述べる。
記憶部12は、メモリデバイス等であり、制御部11によって実行されるプログラムを保持する。このプログラムは、コンピュータ可読かつ、非一時的な記憶媒体に格納されて提供され、この記憶部12に複写されたものであってもよい。またこの記憶部12は、制御部11のワークメモリとしても動作する。
インタフェース部13は、表示装置14、操作デバイス15、及びサンプリングデバイス20との間でデータを送受信するためのインタフェースである。インタフェース部13は、USB(Universal Serial Bus)等の有線通信用のインタフェースや、ブルートゥース(登録商標)等の無線通信インタフェースを含んでよい。
表示装置14は、液晶ディスプレイや有機ELディスプレイ等であって、インタフェース部13経由で情報処理装置10から受信した映像信号に基づく映像を、画面内に表示する。操作デバイス15は、開発者(すなわち、情報処理システム1の利用者)の操作入力を受け付けるためのデバイスであって、例えばキーボードやマウス等であってよい。
振動デバイス16は、情報処理装置10が生成する提示振動データに基づく振動をユーザーに提示するためのデバイスであって、振動を発生させる振動機構17を備えている。本実施形態では、振動デバイス16は、その筐体の左右に2個の振動機構17L及び17Rを備えているものとする。
サンプリングデバイス20は、接触部22を有し、その接触部22が物理的に接触した物体から伝達される振動をサンプリングするためのデバイスである。図2は、サンプリングデバイス20を使用する様子の一例を示している。同図に示されるように、サンプリングデバイス20は、棒状の本体部21を有しており、この本体部21の先端部分の表面が接触部22として機能する。本体部21の表面は、金属製であってもよいし、シリコンやラバーなどであってもよい。また、サンプリングデバイス20は、振動センサー23、及びマイクロホン24を備えている。
振動センサー23は、接触部22から伝達される振動を検出するセンサーであって、例えば低周波マイクロホンなどであってよい。図2に示されるように、振動センサー23は本体部21先端の接触部22近傍に配置されている。振動センサー23は、接触部22が外部の物体(以下、対象物Oという)と接触することで生じる振動の波形を検出する。検出された振動の波形データ(以下、検出振動データという)は、有線、又は無線でサンプリングデバイス20から情報処理装置10に送信される。
一例として、開発者がサンプリングデバイス20を使用して振動のサンプリングを行う際には、本体部21を手で持って接触部22を対象物Oの表面に接触させ、接触を保ったまま接触部22が対象物Oの表面を擦るようにサンプリングデバイス20を移動させる。図2のブロック矢印は、サンプリング時のサンプリングデバイス20の移動方向の一例を示している。このようなサンプリング動作を行うと、対象物O表面の凹凸によって接触部22が振動し、その振動の波形が振動センサー23によって検出される。
マイクロホン24は、周囲の音声を集音するデバイスであって、接触部22が対象物Oと接触した際に発生する音を集音する。マイクロホン24によって集音された音声のデータ(以下、集音音声データという)も、検出振動データと同様に情報処理装置10に送信される。
図2に示されるように、マイクロホン24は、振動センサー23と比較して、接触部22から離れた位置に配置されている。少なくともマイクロホン24は、サンプリングデバイス20の使用時に対象物Oと接触しないような位置に固定すべきである。例えばマイクロホン24は、サンプリングデバイス20の接触部22よりもその逆側の端部に近い位置に配置されてもよい。さらに本実施形態では、本体部21に緩衝部材25が固定されており、マイクロホン24はこの緩衝部材25を介して本体部21に取り付けられている。緩衝部材25は、例えばスポンジ等、本体部21より剛性が低い部材によって形成されている。サンプリング時に発生する振動がマイクロホン24にも伝達されると、マイクロホン24が集音する音声に、振動に起因するノイズが含まれてしまうおそれがある。本実施形態では、マイクロホン24を接触部22から離れた位置に配置したり、緩衝部材25を介して固定したりすることによって、サンプリング時に接触部22で生じる振動がマイクロホン24に伝わりにくくしている。これにより、振動に起因するノイズを抑え、接触部22と対象物Oの接触によって生じる音声が主として集音音声データに含まれるようにすることができる。
以下、情報処理装置10が実現する機能について、図3を用いて説明する。同図に示すように、情報処理装置10は、機能的に、元データ取得部31と、提示振動データ生成部32と、振動制御部33と、を含んで構成されている。さらに提示振動データ生成部32は、周波数解析部32aと、周波数調整部32bと、提示波形生成部32cと、を含んで構成されている。これらの機能は、制御部11が記憶部12に格納されているプログラムを実行することにより、実現される。このプログラムは、インターネット等の通信ネットワークを介して情報処理装置10に提供されてもよいし、光ディスク等のコンピュータ読み取り可能で非一時的な情報記憶媒体に格納されて提供されてもよい。
元データ取得部31は、後述する提示振動データを生成するための元データとして、サンプリングデバイス20から送信される検出振動データを取得する。また、生成される提示振動データとともに利用される付帯データとして、サンプリングデバイス20から送信される集音音声データを併せて取得する。ここで、元データ取得部31が取得する検出振動データと集音音声データは、1回のサンプリング動作が行われた際に同時期に取得された振動、及び音声のデータであるものとする。すなわち、開発者が行ったサンプリング動作によって生じた振動のデータと、その振動に応じて発生した音声のデータとが、合わせて取得される。
提示振動データ生成部32は、元データ取得部31が取得した元データに基づいて、提示振動データを生成する。提示振動データは、開発者が開発するアプリケーションプログラムに含まれ、そのアプリケーションプログラムの実行中にユーザーに提示される振動の内容を示すデータである。提示振動データ生成部32は、元データに含まれる波形を加工することによって、実際に振動機構17に発生させる振動の波形を示す振動波形を含んだ提示振動データを生成する。
具体的に、まず提示振動データ生成部32の周波数解析部32aは、元データに含まれる波形に対して周波数解析を行って、周波数分布データ(周波数スペクトル)を生成する。ここで周波数分布データは、対象となる波形を構成する周波数成分のそれぞれに対して、その振幅を示す数値を含んだデータである。このような周波数解析は、公知の高速フーリエ変換等のアルゴリズムによって実現される。
次に周波数調整部32bが、周波数解析部32aが生成した周波数分布データに対して、各周波数成分の振幅を調整する周波数調整処理を実行する。この周波数調整処理は、所与の周波数成分の振幅が大きくなるように、周波数分布データに含まれる各周波数成分の値を調整する処理である。ここで所与の周波数成分は、振動デバイス16が高効率で振動する周波数(基本周波数等)や、開発者がユーザーに提示したい周波数などであってよい。この周波数調整処理では、比較的高い周波数帯の振幅を小さくし、低い周波数帯の振幅を大きくする調整が行われる。この周波数調整処理のいくつかの具体例については、後述する。
続いて提示波形生成部32cが、周波数調整処理が行われた後の周波数分布データに基づいて、実際に提示される振動の波形データを生成する。この波形データの生成処理は、逆高速フーリエ変換等のアルゴリズムによって実現される。提示波形生成部32cによって生成された波形データが、提示振動データとして記憶部12内に記録される。
本実施形態では、提示振動データ生成部32が生成した提示振動データは、その元データである検出振動データとともに取得された付帯データ(ここでは集音音声データ)と関連づけて記録される。これにより、同じサンプリング動作に基づいて取得された振動データと音声データとを、セットで利用することができるようになる。なお、提示振動データ生成部32は、集音音声データについても、振動データと同様、ユーザーへの提示用に例えばノイズ除去などの調整処理を行って提示音声データを生成し、この提示音声データを提示振動データと関連づけて記録してもよい。
具体的に提示振動データ生成部32は、提示振動データと付帯データを関連づけて記憶するために、マルチチャンネルの音声データフォーマットを用いてもよい。一例として、提示振動データ生成部32は、L、Rの2チャンネルのステレオ音声データフォーマットの一方のチャンネルに提示振動データの符号化波形データを格納し、他方のチャンネルにモノラルの集音音声データを格納する。また、1チャンネルの符号化データフォーマット(例えばモノラルの16ビット音声データフォーマット)を用いて、その上位ビットと下位ビットに提示振動データと付帯データをそれぞれ格納してもよい。この場合におけるデータ格納先のビット数は、振動1に対して音声1(すなわち、両者に50%ずつの割り当て)であってもよいし、データの重要度に応じた割合で分配して格納してもよい。
開発者は、自身が開発するアプリケーションプログラム内において、ユーザーに振動を提示したいタイミングで所望の振動を提示できるように、提示振動データ生成部32が生成した提示振動データを利用するプログラムを制作する。すなわち、所与の条件を満たしたタイミングで提示振動データに基づく振動提示指示を出力するようなプログラムを制作する。なお、このアプリケーションプログラムは、複数の振動機構17L及び17Rのそれぞれに対して同時期に同じ振動提示指示を出力してもよい。また、互いに異なるタイミングで振動を発生させる指示を出力してもよいし、互いに異なる内容の振動を発生させる指示を出力してもよい。
振動制御部33は、提示振動データ生成部32が生成した提示振動データに基づいて、振動デバイス16の振動機構17を振動させる制御信号を出力する。具体的に振動制御部33は、開発者の操作デバイス15に対する指示操作に応じて、振動デバイス16を振動させる。これにより開発者は、生成した提示振動データがどのような振動を発生させるか確認することができる。さらに、振動制御部33は、開発者が開発したアプリケーションプログラムの実行時にも、その処理内容に応じて、提示振動データに基づく振動を発生させる制御信号を出力する。これにより、そのアプリケーションプログラムのユーザーに振動を提示できる。
また、振動制御部33は、提示振動データに基づく振動を提示する際に、その提示振動データに関連づけられた音声データを同時に再生してもよい。これにより、実際のサンプリング動作によって生じる振動と音を再現することができ、より現実感を高めることができる。
次に、周波数調整部32bによる周波数調整処理のいくつかの具体例について、説明する。図4は、検出振動データに基づいて周波数解析部32aが生成した周波数分布データの一例を示している。以下の具体例では、この図4に示す周波数分布データを用いて、周波数調整処理の内容について説明する。
第1の例では、周波数調整部32bは周波数帯の圧縮処理を行う。これは、周波数分布の全体を限られた範囲の周波数帯(ここでは0~500Hzまでの範囲)に圧縮する処理である。図5は、図4の周波数分布データに対して圧縮処理が実行された後の周波数分布データを示している。ここで、圧縮後の周波数帯の範囲は、予め定められた範囲であってもよいし、周波数分布データ内におけるピーク周波数が目標周波数(例えば振動デバイス16の基本周波数)になるように決定された範囲であってもよい。
第2の例では、周波数調整部32bは周波数帯の圧縮、及び反転処理を行う。この例においては、第1の例で示した圧縮処理に加えて、周波数分布の全体を反転させる処理が実行される。図6は、この第2の例が適用された場合の周波数分布データを示している。このような反転処理を行うことによって、周波数分布のピークを目標周波数に合わせやすくなる。なお、周波数調整部32bは、目標周波数、及びピーク周波数に基づいて、第1の例、及び第2の例の周波数調整処理のどちらを実行するか判断してもよい。
第3の例では、周波数調整部32bは、周波数分布の全体をいくつかの部分範囲に分割し、これらの部分範囲の周波数分布を合算する処理を行う。図7は、第3の例における周波数調整処理を説明する図である。この図の例では、図4に示す周波数分布データが500Hz近傍を境に2個の部分範囲に分割され、高周波数側の周波数分布が低周波数側の周波数分布に加算される。
第4の例では、周波数調整部32bは、周波数分布データ内における各周波数成分の振幅を、少しずつ低周波数側に寄せる周波数調整処理を行う。具体的には、高周波数側から始めて、各周波数成分の振幅値の一部を隣接する低周波数側の周波数成分にシフトさせる処理を、シフト量を徐々に増やしながら再帰的に繰り返し実行する。これにより、周波数分布の全体形状を反映しながら、低周波数側にピークを持つ周波数分布を生成することができる。図8は、第4の例における周波数調整処理が実行された後の周波数分布データを示している。
これまでの例では、提示振動データ生成部32は、サンプリングデバイス20によって検出された検出振動データを元データとして用いて、提示振動データを生成することとしている。しかしながら、提示振動データを生成するための元データは、検出振動データに限られない。例えば提示振動データ生成部32は、外部から入力された所与の波形データに対して、以上説明したような周波数調整処理を実行して、提示振動データを生成してもよい。また、音声を表す波形データを元データとして利用してもよい。特にこの場合、音声の周波数ピークと振動として好ましい周波数ピークとの間にはずれがあるため、以上説明したような周波数調整処理が効果的である。
また、提示振動データ生成部32は、開発者が入力した周波数分布を元データとして仕様して、提示振動データを生成してもよい。この場合、開発者は、操作デバイス15に対する操作入力によって、図4に例示したような周波数分布の形状を指定する。具体的に提示振動データ生成部32は、例えば開発者によるマウスのドラッグ操作等によって具体的な周波数分布の形状の指定を受け付けてもよい。あるいは、典型的ないくつかの周波数における振幅値を数値として受け付けて、受け付けた周波数の間を補間することで周波数分布の形状を特定してもよい。提示振動データ生成部32は、このようにして開発者から受け付けた周波数分布に基づいて、前述したような周波数調整処理を必要に応じて実行して、提示振動データを生成する。
この場合において、周波数分布の形状を全て開発者が指定するのは手間になる。そこで本実施形態に係る情報処理装置10は、予め周波数分布のサンプルデータを記憶部12内に記憶しておき、開発者はこのサンプルデータを元に周波数分布の形状を指定してもよい。例えば情報処理装置10は、「重い振動」、「軽い振動」、「銃の発射時の振動」、「金属の表面で生じる振動」など、典型的な振動パターンの周波数分布データをサンプルデータとして予め保持しておく。開発者は、用意されたサンプルデータの中から所望のデータを選択し、さらに選択したサンプルデータの周波数分布形状に対して、形状を変化させる操作を行う。このようにしてサンプルデータに基づいて周波数分布の形状を特定することで、開発者が周波数分布の全体形状を一から指定する場合と比較して、容易に開発者が望む傾向の振動波形データを生成することができる。さらに、サンプルデータをそのまま使用するのではなく、その形状を変化させる操作を開発者から受け付けることによって、提示振動データの内容が画一的にならないようにすることができる。
さらにこの例において、提示振動データ生成部32は、周波数分布の形状を指定する入力だけでなく、振動のエンベロープ形状を指定する入力を開発者から受け付けてもよい。図9は、この場合において開発者が入力するエンベロープ形状の一例を示している。提示振動データ生成部32は、生成する振動波形のエンベロープが開発者の指定した形状に合致するように、提示振動データを生成する。こうすれば、徐々に強くなる振動や、最初は強くその後に弱くなる振動など、振動の強さの時間変化を開発者が望むように設定することができる。
さらに提示振動データ生成部32は、時間とともに周波数特性の変化する振動を生成するために、時間区間ごとに異なる形状の周波数分布の指定を開発者から受け付けてもよい。例えば音響分野においては、ADSRなどのように立ち上がり区間や減衰区間などの時間区間が設定され、それぞれの時間区間に対して異なる制御が実行される場合がある。それと同様に、提示振動データ生成部32は、振動の提示開始から提示終了までの時間を複数の時間区間に分割し、各時間区間で提示する振動の波形を、互いに異なる周波数分布形状に基づいて生成してもよい。この場合、開発者は、複数の時間区間のそれぞれに対して、その時間区間に提示する振動を生成するために必要な周波数分布の形状を指定するデータを入力する。なお、この場合における時間区間は、エンベロープ形状に基づいて提示振動データ生成部32が自動的に決定してもよいし、開発者が指定してもよい。このように時間区間ごとに異なる周波数分布の形状を指定するデータを受け付けることによって、時間とともに特性の変化する振動を提示する提示振動データを生成することができる。
これまで説明したような処理手順によって、周波数分布データを元に提示振動データを生成する場合、周波数調整処理の内容や、開発者が指定する周波数分布の形状によっては、周波数分布の形状に急激に変化する箇所が生じることがある。このような急激な値の変化が周波数分布に含まれていると、逆高速フーリエ変換等によって波形データを生成する際に、ノイズが発生してしまうことがある。そこで、周波数調整部32bは、周波数分布の中で周波数の単位変化量に対する振幅の変化量が所定の閾値を超えるような箇所について、その変化量を小さくするような調整処理を実行してもよい。具体的には、周波数分布に対して線形補間やNURBS(非一様有理Bスプライン)などのアルゴリズムに基づく補間処理を行って、急激な値の変化を緩和する調整処理を行う。これにより、各種の周波数調整処理を適用する場合や、開発者から指定される周波数分布形状を用いて提示振動データを生成する場合に、生成される提示振動データに意図しないノイズが含まれないようにすることができる。
これまでの説明では、サンプリングデバイス20は振動センサー23の他にマイクロホン24を備え、このマイクロホン24で集音された集音音声データが付帯データとして情報処理装置10に提供されることとした。しかしながらこれに限らず、サンプリングデバイス20は、マイクロホン24に加えて、又はこれに代えて、接触部22近傍の様子を撮影するためのカメラを備えてもよい。この場合、元データ取得部31は、サンプリング時にカメラで撮影された撮影映像データを、検出振動データとともに付帯データとして取得する。さらに提示振動データ生成部32は、撮影映像データの内容を解析し、その解析結果に基づいて提示振動データを生成してもよい。
以下、撮影映像データを用いた提示振動データの生成方法について、説明する。サンプリング時には開発者が手動でサンプリングデバイス20を移動させるが、人が正確に一定速度で物を移動させることは難しい。そこで提示振動データ生成部32は、撮影映像データを解析することで、検出振動データのサンプリングが行われた際のサンプリングデバイス20の実際の移動速度を推定する。この撮影映像データを用いた移動速度の推定処理は、映像内に写っている特定のオブジェクトの位置の変化に基づいて実行されてもよいし、オプティカルフローなどの技術によって映像全体の動きに基づいて実行されてもよい。
さらに提示振動データ生成部32は、推定された移動速度に基づいて検出振動データを補正する。この補正は、タイムストレッチなどの処理によってサンプリングデバイス20が一定速度で移動した際の振動を再現する処理であってよい。あるいは提示振動データ生成部32は、検出振動データのうち、比較的速度の変動幅が小さい(一定速度に近い)時間区間に検出されたデータのみを抽出してもよい。このようにして得られた振動データを用いて提示振動データを生成することにより、サンプリング時の速度の緩急に依存しない振動データを得ることができる。
この撮影映像データは、付帯データとして提示振動データと関連づけて記憶されてもよい。この場合において、提示振動データや集音音声データは、記憶される映像データに含まれる音声データ部分に格納されてもよい。
以上説明したような各種の方法で生成した提示振動データに対して、提示振動データ生成部32は、タグ情報を付加してもよい。この場合のタグ情報は、振動の種類を示す情報や、サンプリング実行時の実行条件(対象物Oの種類など)であってよい。このようなタグ情報を付加することにより、生成された提示振動データの再利用が容易になる。
タグ情報は、開発者によって手動で指定されてもよいが、アプリケーションプログラム内における提示振動データの利用方法に応じて情報処理装置10によって自動的に付加されてもよい。例えば提示振動データ生成部32は、提示振動データがユーザーに提示される際に表示装置14の画面上に表示される映像に対して画像認識処理を実行し、映像中に含まれる内容に対応するタグ情報をその提示振動データに付加してもよい。例えば開発者が開発するアプリケーションプログラムがゲームのプログラムであって、そのゲーム内の爆弾が登場するシーンでユーザーに提示される提示振動データがある場合、提示振動データ生成部32は、その提示振動データに対して「爆弾」のタグを付加する。
また、提示振動データ生成部32は、サンプリング時に取得された付帯データ(集音音声データや撮影映像データ)を解析した結果に基づいて、タグ情報を付加してもよい。具体的には、集音音声データに含まれる音の特徴や、撮影映像データに写っている対象物Oを解析して得られる解析結果(対象物Oの材質等)を示す情報をタグ情報として付加する。これにより、サンプリングされた検出振動データに基づいて生成された提示振動データに対して、その振動がどのような環境で取得された振動かを示すタグ情報を付加することができる。
開発者が開発したアプリケーションプログラムを実行する際には、振動制御部33は、提示振動データ生成部32によって生成された提示振動データの提示態様(振動の提示タイミングや再生速度、周波数、強さ等)を自動的に決定してもよい。例えば振動制御部33は、アプリケーションプログラムによって描画、表示される映像の内容を解析し、その中に含まれる注目オブジェクトの映像内における移動速度を特定する。そして、特定された移動速度に応じて、提示振動データの再生速度や周波数を変化させる。具体的には、注目オブジェクトの移動速度に合わせて提示振動データの再生速度を変化させることで、注目オブジェクトの動きにタイミングの合った振動を提示できる。また、注目オブジェクトの移動速度が遅い場合には提示振動データの低周波数成分を増加させ、移動速度が速い場合には高周波数成分を増加させる。これにより、注目オブジェクトの移動速度に合わせて、振動をソフトな感触にしたり硬い感触にしたりすることができる。
なお、ここではサンプリングによって得られる検出振動データに基づいて生成された提示振動データを提示する場合に、その提示態様を注目オブジェクトの映像内における挙動に応じて調整することとした。しかしながら、このようにサンプリングに基づく提示振動データを利用する場合に限らず、予めその他の方法で準備された提示振動データに基づく振動を提示する場合や、処理内容等に応じてリアルタイムで提示振動データを生成して出力する場合などであっても、ここで説明したようにアプリケーションプログラムの実行内容(表示される注目オブジェクトの挙動など)に応じて提示する振動の内容を制御することとしてもよい。
さらにこの例において、振動制御部33は、振動デバイス16に内蔵される複数の振動機構17L、及び17Rのそれぞれに対して、互いに異なる振動を発生させる制御信号を出力してもよい。具体的に、映像内における注目オブジェクトの挙動(注目オブジェクトが表示される位置や、その移動方向など)に応じて、各振動機構17に発生させる振動の強さを変化させてもよい。一例として、注目オブジェクトが映像内において左側から右側に向かって移動する場合、最初はユーザーから見て左側に配置されている振動機構17Lの振動を振動機構17Rよりも強くし、注目オブジェクトの移動に伴って徐々に振動機構17Lの振動を弱めるとともに、振動機構17Rの振動を強めていく。以上説明したような制御によれば、映像の内容に応じて振動のパターンを自動的に変化させることができ、開発者が振動パターンを細かく指定せずとも映像に合わせた振動をユーザーに提示できる。
また、振動制御部33は、複数の振動機構17L、及び17Rのそれぞれに対して提示振動データに応じた振動を発生させる制御信号を出力する場合に、両者の振動の相違を強調する補正を行ってもよい。例えば何かがキャラクターを貫通するシーンや衝撃が一方から他方に伝達されるシーンなどを再現する場合、複数の振動機構17L、及び17Rを互いにほぼ同時期に、しかしその開始タイミングをわずかにずらして振動させるような振動提示指示がアプリケーションプログラムによってなされることがある。しかしながら、ユーザーは、このようなわずかなタイミングのずれに気づきにくく、同時に発生した振動と認識してしまう場合がある。そこで振動制御部33は、二つの振動機構17に対して互いに重複する時期に振動を発生させる場合に、両者の相違を強調する補正を行う。
具体的に、例えば振動制御部33は、一方の振動よりわずかに遅れて他方の振動を開始させる指示を受け付けた場合に、後から開始する振動の開始時点をさらに遅らせる補正を行う。このときの補正量(遅らせる時間)は、所定の値であってもよいし、元のずれ量に応じて決定されてもよい。また、振動制御部33は、両者の振動の終了タイミングをずらす補正を行ってもよい。
また、二つの振動機構17に対してタイミングの一致した振動を発生させる振動提示指示がアプリケーションプログラムから受け付けられた場合であっても、発生させるべき振動の内容(振動波形)は相違することがある。このような場合も、振動制御部33は、二つの振動機構17が互いに異なる振動を提示していることをユーザーに明確に伝達するために、二つの振動の発生タイミングをずらす補正を行ってもよい。
また、以上説明したような振動の発生タイミングをずらす調整だけでなく、振動の内容自体を変化させる補正を行ってもよい。例えば振動制御部33は、複数の振動機構17に対して、タイミングがわずかにずれた振動や内容の異なる振動を発生させる振動提示指示を受け付けた場合に、両者が異なる振動であることを強調するために、一方の振動にリバーブ(残響)が生じているかのような効果を発生させる補正を行ってもよい。
これまでの説明では、開発者がアプリケーションプログラムの開発時にサンプリング動作等を行って提示振動データを生成し、生成された提示振動データに基づく振動がアプリケーションプログラムの実行中にユーザーに提示されることとした。しかしながらこれに限らず、アプリケーションプログラムの実行中にサンプリングを行って得られる振動データに基づく振動がユーザーに提示されてもよい。具体的には、複数のユーザーの一方(以下、第1ユーザーという)が振動センサー23を備えたサンプリングデバイス20を使用し、他方のユーザー(以下、第2ユーザーという0が振動デバイス16を使用するものとする。なお、各ユーザーが使用するデバイスは、サンプリングデバイス20、及び振動デバイス16の双方の機能を備えた互いに同じデバイスであってもよい。
この例では、アプリケーションプログラムの実行中、第1ユーザーは自身の所持するサンプリングデバイス20を動かしたり衝撃を与えたりして振動を発生させる。その振動は振動センサー23によって検出され、情報処理装置10に送信される。情報処理装置10は、これまでの説明と同様に検出振動データに基づいて提示振動データを生成し、生成した提示振動データに基づく振動提示指示を第2ユーザーが所持する振動デバイス16に対して出力する。これにより、リアルタイムで第1ユーザーが発生させた振動を第2ユーザーに伝達することができる。
この場合において、サンプリングデバイス20には複数の振動センサー23が内蔵され、そのそれぞれで検出された振動に基づく提示振動データが、第2ユーザーの持つ振動デバイス16に内蔵された複数の振動機構17のそれぞれが発生させる振動に利用されることとしてもよい。これにより、サンプリングデバイス20内で検出された複数の振動がそれぞれ振動デバイス16内の振動機構17によって再現される。特にサンプリングデバイス20と振動デバイス16とが互いに近い形状を有しており、かつサンプリングデバイス20内における複数の振動センサー23の位置が、振動デバイス16内における振動機構17の位置と近い場合に、サンプリングデバイス20の全体に生じる振動を忠実に振動デバイス16で再現することができる。
あるいは、サンプリングデバイス20内の一つの振動センサー23によって検出された一つの検出振動データに基づいて、振動デバイス16内における二つの振動機構17を振動させるための提示振動データが生成されてもよい。この場合、各振動機構17に発生させる振動の内容は互いに同じであってもよいが、互いに相違するものであってもよい。一つの検出振動データに基づいて互いに相違する振動を発生させる場合、例えば振動制御部33は、予め定められたパラメータに従って両者の発生タイミングをずらしたり所与の補正を適用したりする。あるいは、検出振動データの振動特性に基づいて、各振動機構17に対する振動の内容をどのように補正するか決定してもよい。
以上説明した本実施形態に係る情報処理システム1によれば、サンプリング動作によって得られた検出振動データに基づいて提示振動データを生成するとともに、生成した提示振動データに対して同じサンプリング動作中に得られた付帯データを関連づけて利用することによって、サンプリングによって得られた情報を効果的に利用してユーザーに提示する振動を用意することができる。
なお、本発明の実施の形態は、以上説明したものに限られない。例えば以上の説明では、情報処理装置10は、開発者によるアプリケーションプログラムの開発、及び開発されたアプリケーションプログラムの実行時における振動の提示の双方に利用されることとしたが、当然ながら開発されたアプリケーションプログラムは別の情報処理装置によって実行されてもよい。
また、以上の説明では振動デバイス16は二つの振動機構17を有することとしたが、振動機構17は一つだけであってもよいし、三つ以上あってもよい。また、サンプリングデバイス20の形状や構成も以上説明したものに限られず、各種のものであってよい。
1 情報処理システム、10 情報処理装置、11 制御部、12 記憶部、13 インタフェース部、14 表示装置、15 操作デバイス、16 振動デバイス、17L,17R 振動機構、20 サンプリングデバイス、21 本体部、22 接触部、23 振動センサー、24 マイクロホン、25 緩衝部材、31 元データ取得部、32 提示振動データ生成部、32a 周波数解析部、32b 周波数調整部、32c 提示波形生成部、33 振動制御部。
Claims (15)
- 振動センサーと、
前記振動センサーが検出する振動の内容を示す検出振動データを当該振動センサーから取得する検出振動データ取得部と、
前記振動センサーによる振動の検出時に、当該振動に応じて発生する音声、及び前記振動センサーの周囲の様子を示す動画像の少なくとも一方を含む付帯データを合わせて取得する付帯データ取得部と、
前記検出振動データに基づいて、ユーザーに提示する振動の内容を含んだ提示振動データを生成し、前記付帯データとともに記録する提示振動データ生成部と、
を含むことを特徴とする情報処理システム。 - 請求項1に記載の情報処理システムにおいて、
接触部、及びマイクロホンを備えるサンプリングデバイスをさらに含み、
前記振動センサーは、前記サンプリングデバイスに配置され、
前記マイクロホンは、前記サンプリングデバイスの前記振動センサーよりも前記接触部から離れた位置に配置され、
前記振動センサーは、前記接触部が他の物体と接触して生じる振動を検出し、
前記マイクロホンは、前記接触部が他の物体と接触して生じる音声を集音し、
前記付帯データは、前記マイクロホンが集音した音声データを含む
ことを特徴とする情報処理システム。 - 請求項1又は2に記載の情報処理システムにおいて、
前記提示振動データ生成部は、一つの前記検出振動データに基づいて、複数の振動機構を同時期に振動させるための複数の提示振動データを生成する
ことを特徴とする情報処理システム。 - 請求項3に記載の情報処理システムにおいて、
前記複数の提示振動データに対して、互いの相違を強調する補正を行う補正部をさらに含む
ことを特徴とする情報処理システム。 - 請求項1から4のいずれか一項に記載の情報処理システムにおいて、
前記提示振動データの制作者から、周波数分布の形状を指定する情報を受け付ける受付部をさらに含み、
前記提示振動データ生成部は、前記受付部が受け付けた周波数分布に基づいて、前記提示振動データを生成する
ことを特徴とする情報処理システム。 - 請求項5に記載の情報処理システムにおいて、
前記受付部は、前記制作者から、波形のエンベロープ形状を指定する情報を受け付け、
前記提示振動データ生成部は、前記受付部が受け付けた周波数分布と前記エンベロープ形状とに基づいて、前記提示振動データを生成する
ことを特徴とする情報処理システム。 - 請求項1から6のいずれか一項に記載の情報処理システムにおいて、
前記付帯データ取得部は、前記動画像を含む前記付帯データを取得し、
前記提示振動データ生成部は、前記動画像に基づいて、前記振動センサーが振動を検出した際の前記振動センサーの移動速度を推定し、当該推定結果に基づいて前記提示振動データを生成する
ことを特徴とする情報処理システム。 - 請求項1から7のいずれか一項に記載の情報処理システムにおいて、
前記提示振動データ生成部は、前記付帯データに応じて決まるタグ情報を前記提示振動データに付加して記録する
ことを特徴とする情報処理システム。 - 請求項1から8のいずれか一項に記載の情報処理システムにおいて、
前記提示振動データに基づく振動を発生させる制御を行う振動制御部であって、当該振動を発生させる際に提示される映像の内容に基づいて、発生させる振動の内容を変化させる振動制御部をさらに含む
ことを特徴とする情報処理システム。 - 請求項1から9のいずれか一項に記載の情報処理システムにおいて、
前記提示振動データ生成部は、
前記検出振動データが示す波形に基づいて、当該波形を構成する周波数成分ごとの振幅を示す周波数分布データを生成する周波数解析部と、
前記周波数分布データに対して、所与の周波数調整処理を行う周波数調整部と、
前記周波数調整処理が行われた周波数分布データに基づいて、ユーザーに提示する振動の波形を生成する提示波形生成部と、
をさらに含むことを特徴とする情報処理システム。 - 請求項10に記載の情報処理システムにおいて、
前記周波数調整部は、前記周波数調整処理の結果得られる周波数分布に対して、周波数の単位変化に対する振幅の変化量を小さくする調整を行う
ことを特徴とする情報処理システム。 - 画面上に表示される映像を描画する描画部と、
振動を発生させる制御を行う振動制御部であって、当該振動を発生させる際に表示される前記映像の内容に応じて決まる内容の振動を発生させる振動制御部と、
を含むことを特徴とする情報処理システム。 - 請求項12に記載の情報処理システムにおいて、
前記映像には、画面内を移動する注目オブジェクトが含まれ、
前記振動制御部は、前記注目オブジェクトの挙動に応じて、発生させる振動の内容を変化させる
ことを特徴とする情報処理システム。 - 振動センサーが検出する振動の内容を示す検出振動データを当該振動センサーから取得するステップと、
前記振動センサーによる振動の検出時に、当該振動に応じて発生する音声、及び前記振動センサーの周囲の様子を示す動画像の少なくとも一方を含む付帯データを合わせて取得するステップと、
前記検出振動データに基づいて、ユーザーに提示する振動の内容を含んだ提示振動データを生成し、前記付帯データとともに記録するステップと、
を含むことを特徴とする情報処理方法。 - 振動センサーが検出する振動の内容を示す検出振動データを当該振動センサーから取得するステップと、
前記振動センサーによる振動の検出時に、当該振動に応じて発生する音声、及び前記振動センサーの周囲の様子を示す動画像の少なくとも一方を含む付帯データを合わせて取得するステップと、
前記検出振動データに基づいて、ユーザーに提示する振動の内容を含んだ提示振動データを生成し、前記付帯データとともに記録するステップと、
をコンピュータに実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2018/020980 WO2019229936A1 (ja) | 2018-05-31 | 2018-05-31 | 情報処理システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2018/020980 WO2019229936A1 (ja) | 2018-05-31 | 2018-05-31 | 情報処理システム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2019229936A1 true WO2019229936A1 (ja) | 2019-12-05 |
Family
ID=68698296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2018/020980 WO2019229936A1 (ja) | 2018-05-31 | 2018-05-31 | 情報処理システム |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2019229936A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11941177B2 (en) | 2020-01-17 | 2024-03-26 | Sony Group Corporation | Information processing device and information processing terminal |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006261836A (ja) * | 2005-03-15 | 2006-09-28 | Nec Corp | 動画撮影・再生システム、その撮影・再生方法、その携帯装置およびその撮影、再生方法 |
WO2010024030A1 (ja) * | 2008-08-29 | 2010-03-04 | 日本電気株式会社 | 情報入力装置,情報入力方法及び情報入力用プログラム |
JP2010287974A (ja) * | 2009-06-10 | 2010-12-24 | Sharp Corp | 携帯電話及びプログラム |
WO2011027535A1 (ja) * | 2009-09-03 | 2011-03-10 | パナソニック株式会社 | 触感再現方法、装置、コンピュータプログラムおよびコンピュータプログラムを記録した記録媒体 |
JP2011086068A (ja) * | 2009-10-14 | 2011-04-28 | Chugoku Electric Power Co Inc:The | 状態再現システム |
JP2014002336A (ja) * | 2012-06-21 | 2014-01-09 | Nec Corp | コンテンツ処理装置、コンテンツ処理方法、およびコンピュータプログラム |
JP2017221427A (ja) * | 2016-06-15 | 2017-12-21 | 任天堂株式会社 | ゲームシステム、方法、およびゲームプログラム |
-
2018
- 2018-05-31 WO PCT/JP2018/020980 patent/WO2019229936A1/ja active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006261836A (ja) * | 2005-03-15 | 2006-09-28 | Nec Corp | 動画撮影・再生システム、その撮影・再生方法、その携帯装置およびその撮影、再生方法 |
WO2010024030A1 (ja) * | 2008-08-29 | 2010-03-04 | 日本電気株式会社 | 情報入力装置,情報入力方法及び情報入力用プログラム |
JP2010287974A (ja) * | 2009-06-10 | 2010-12-24 | Sharp Corp | 携帯電話及びプログラム |
WO2011027535A1 (ja) * | 2009-09-03 | 2011-03-10 | パナソニック株式会社 | 触感再現方法、装置、コンピュータプログラムおよびコンピュータプログラムを記録した記録媒体 |
JP2011086068A (ja) * | 2009-10-14 | 2011-04-28 | Chugoku Electric Power Co Inc:The | 状態再現システム |
JP2014002336A (ja) * | 2012-06-21 | 2014-01-09 | Nec Corp | コンテンツ処理装置、コンテンツ処理方法、およびコンピュータプログラム |
JP2017221427A (ja) * | 2016-06-15 | 2017-12-21 | 任天堂株式会社 | ゲームシステム、方法、およびゲームプログラム |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11941177B2 (en) | 2020-01-17 | 2024-03-26 | Sony Group Corporation | Information processing device and information processing terminal |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6744940B2 (ja) | 音声信号の遷移に関係付けられる触覚効果を生成するためのシステム及び方法 | |
JP6794483B2 (ja) | 音声信号のエンベロープに関係付けられる触覚効果を生成するためのシステム及び方法 | |
JP6933215B2 (ja) | 音場形成装置および方法、並びにプログラム | |
JP5643821B2 (ja) | 音声制御装置及び音声制御方法 | |
US20220293073A1 (en) | Signal processing device, signal processing method, and program | |
US20220054049A1 (en) | High-precision temporal measurement of vibro-acoustic events in synchronisation with a sound signal on a touch-screen device | |
CN113302690A (zh) | 音频处理 | |
JPWO2020031497A1 (ja) | 触覚提示装置の事前駆動 | |
JP5703807B2 (ja) | 信号処理装置 | |
JP2011124723A (ja) | オーディオデータ処理装置、オーディオ装置、オーディオデータ処理方法、プログラム及び当該プログラムを記録した記録媒体 | |
JP2019067396A (ja) | ハプティックピッチ制御 | |
WO2019229936A1 (ja) | 情報処理システム | |
JP6329679B1 (ja) | オーディオコントローラ、超音波スピーカ、オーディオシステム、及びプログラム | |
US10133547B2 (en) | Method and device for synthesizing a sound | |
WO2020189263A1 (ja) | 音響処理装置、音響処理方法、および音響処理プログラム | |
JP2022017880A (ja) | 信号処理装置および方法、並びにプログラム | |
CN111627412B (zh) | 音频变速方法、装置、电子设备和计算机可读存储介质 | |
JP4390289B2 (ja) | 再生装置 | |
JP6028489B2 (ja) | 動画再生装置、動画再生方法、及びプログラム | |
WO2023173285A1 (zh) | 音频处理方法、装置、电子设备及计算机可读存储介质 | |
JP2009282536A (ja) | 既知音響信号除去方法及び装置 | |
JP2007304515A (ja) | オーディオ信号伸張圧縮方法及び装置 | |
KR101005303B1 (ko) | 오디오 데이터의 성격과 어울리는 출력 패턴 자동 생성 방법 및 출력 패턴 자동 생성 장치 | |
WO2024018922A1 (ja) | 信号処理装置、信号処理方法、プログラム | |
KR20170068795A (ko) | 소리의 시각화 방법 및 이를 이용한 모바일 단말 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18920767 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 18920767 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |