JP6287921B2 - 情報処理装置及びプログラム - Google Patents

情報処理装置及びプログラム Download PDF

Info

Publication number
JP6287921B2
JP6287921B2 JP2015062743A JP2015062743A JP6287921B2 JP 6287921 B2 JP6287921 B2 JP 6287921B2 JP 2015062743 A JP2015062743 A JP 2015062743A JP 2015062743 A JP2015062743 A JP 2015062743A JP 6287921 B2 JP6287921 B2 JP 6287921B2
Authority
JP
Japan
Prior art keywords
motion
output
music
information
action
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015062743A
Other languages
English (en)
Other versions
JP2016183989A (ja
Inventor
弘明 松場
弘明 松場
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2015062743A priority Critical patent/JP6287921B2/ja
Publication of JP2016183989A publication Critical patent/JP2016183989A/ja
Application granted granted Critical
Publication of JP6287921B2 publication Critical patent/JP6287921B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、カラオケの楽曲の出力中に、観客を示す映像を表示させる情報処理装置の技術分野に関する。
特許文献1には、ユーザが観客の前で歌うと同様な疑似体験を可能とするカラオケ装置が開示されている。具体的に、特許文献1には、歌手がステージで歌ったときの観客の反応を録画した映像をディスプレイ装置に再生し、スピーカで再生される音をバックに、ディスプレイ装置で再生される歌手等や観客の反応を見ながらユーザが歌うことが開示されている。
特開2004−287362号公報
しかしながら、ディスプレイ装置に表示される観客の反応は予め録画されたものであり、ユーザが実際に歌うときの動作に応じて観客の反応が変わるものではない。そのため、ユーザに対して観客が反応しているという感覚が希薄となるので、観客の前でユーザが歌っているような臨場感が不足する。
本発明は、以上の点に鑑みてなされたものであり、あたかも観客の前で歌っているかのような臨場感を高めることを可能とする情報処理装置等を提供することを課題とする。
上記課題を解決するために、請求項1に記載の発明は、楽曲を示す楽曲データを取得する取得手段と、前記取得手段により取得された前記楽曲データが示す楽曲を出力手段により出力させる出力制御手段と、前記出力手段による前記楽曲の出力中に、ユーザの動作を検出する検出手段と、前記検出手段により前記ユーザの動作の検出が開始されてから前記検出手段により所定運動量以下のユーザの動作が検出されるまでの間に前記検出手段により検出された動作に基づいて、繰り返し動作を示す動作情報を決定する決定手段と、前記出力手段による前記楽曲の出力中に、前記決定手段により決定された前記動作情報が示す繰り返し動作を行うオブジェクトを示す映像を表示手段に表示させる表示制御手段と、を備えることを特徴とする。
請求項に記載の発明は、請求項に記載の情報処理装置において、前記検出手段により前記ユーザの動作の検出が開始されてから第1所定時間が経過した後に前記検出手段により前記所定運動量以下のユーザの動作が検出されるまでに検出された前記ユーザの動作に基づいて、前記動作情報を決定することを特徴とする。
請求項に記載の発明は、請求項1又は2に記載の情報処理装置において、前記取得手段は、複数の演奏パートで構成される楽曲を示す前記楽曲データを取得し、前記決定手段により決定された前記動作情報を、前記複数の演奏パートのうちの何れかに割り当てる割当手段を更に備え、前記表示制御手段は、前記割当手段により前記動作情報が割り当てられた演奏パートが前記出力手段により出力されているとき、前記動作情報が示す繰り返し動作を行う前記オブジェクトを示す映像を前記表示手段に表示させることを特徴とする。
請求項に記載の発明は、請求項に記載の情報処理装置において、前記取得手段は、互いに種類が同じ2以上の演奏パートを含む複数の演奏パートで構成される楽曲を示す前記楽曲データを取得し、前記割当手段は、前記決定手段により決定された前記動作情報と、前記決定手段により前記動作情報が決定された前記ユーザの動作が前記検出手段により検出されたときに前記出力手段により出力されていた演奏パートの種類を示す種類情報とを対応付けて種類情報記憶手段に記憶させ、前記表示制御手段は、前記種類情報記憶手段に記憶された前記種類情報が示す種類の演奏パートが前記出力手段により出力されているとき、前記種類情報に対応付けて前記種類情報記憶手段に記憶された前記動作情報が示す繰り返し動作を行う前記オブジェクトを示す映像を前記表示手段に表示させることを特徴とする。
請求項に記載の発明は、請求項1乃至の何れか1項に記載の情報処理装置において、前記決定手段は、前記検出手段により前記ユーザの動作の検出が開始されてから第2所定時間が経過する前までに前記繰り返し動作が決定されなかった場合、前記ユーザの動作の検出が開始されてから前記第2所定時間が経過するまでに前記検出手段により検出された前記ユーザの動作に基づいて、前記動作情報を決定することを特徴とする。
請求項6に記載の発明は、予め定められた繰り返し動作を示す所定動作情報を複数記憶する所定動作情報記憶手段と、楽曲を示す楽曲データを取得する取得手段と、前記取得手段により取得された前記楽曲データが示す楽曲を出力手段により出力させる出力制御手段と、前記出力手段による前記楽曲の出力中に、ユーザの動作を検出する検出手段と、前記検出手段により検出された動作に基づいて、繰り返し動作を示す動作情報を決定する決定手段であって、前記所定動作情報記憶手段に記憶された前記複数の所定動作情報のうち、前記検出手段により検出された動作と類似する動作を示す所定動作情報を決定し、前記検出手段により検出された動作と類似する動作を示す所定動作情報が前記所定動作情報記憶手段に記憶されていない場合、前記検出手段により検出された動作を示す動作情報決定する決定手段と、前記出力手段による前記楽曲の出力中に、前記決定手段により決定された前記所定動作情報又は前記動作情報が示す繰り返し動作を行うオブジェクトを示す映像を表示手段に表示させる表示制御手段と、を備えることを特徴とする。
請求項7に記載の発明は、複数の演奏パートで構成される楽曲を示す曲データを取得する取得手段と、前記取得手段により取得された前記楽曲データが示す楽曲を出力手段により出力させる出力制御手段と、前記出力手段による前記楽曲の出力中に、ユーザの動作を検出する検出手段と、前記検出手段により検出された動作に基づいて、繰り返し動作を示す動作情報を決定する決定手段と、前記決定手段により決定された前記動作情報を、前記複数の演奏パートのうちの何れかに割り当てる割当手段と、前記割当手段により前記動作情報が割り当てられた演奏パートが前記出力手段により出力されているとき、前記決定手段により決定された前記動作情報が示す繰り返し動作を行うブジェクトを示す映像を示手段に表示させる表示制御手段と、を備えることを特徴とする。
請求項8に記載の発明は、楽曲を示す楽曲データを取得する取得手段と、前記取得手段により取得された前記楽曲データが示す楽曲を出力手段により出力させる出力制御手段と、前記出力手段による前記楽曲の出力中に、ユーザの動作を検出する検出手段と、前記検出手段により検出された動作に基づいて、繰り返し動作を示す動作情報を決定する決定手段と、前記出力手段による前記楽曲の出力中に、前記決定手段により決定された前記動作情報が示す繰り返し動作を行うオブジェクトを示す映像を表示手段に表示させる表示制御手段であって、前記検出手段により前記ユーザの動作の検出が開始されてから第2所定時間が経過する前までに前記繰り返し動作が決定されなかった場合、前記ユーザの動作の検出が開始されてから前記第2所定時間が経過するまでに前記検出手段により検出された前記ユーザの動作に基づいて、前記動作情報を決定する表示制御手段と、を備えることを特徴とする。
請求項9に記載の発明は、楽曲を示す楽曲データを取得する取得手段と、前記取得手段により取得された前記楽曲データが示す楽曲を出力手段により出力させる出力制御手段と、前記出力手段による前記楽曲の出力中に、ユーザの動作を検出する検出手段と、前記検出手段により検出された動作に基づいて、繰り返し動作を示す動作情報を決定する決定手段と、前記決定手段により決定された前記動作情報が示す繰り返し動作が行われる速さを、前記繰り返し動作の周期と、前記取得手段により取得された前記楽曲データが示す楽曲のテンポとに基づいて調整する調整手段と、前記出力手段による前記楽曲の出力中に、前記決定手段により決定された前記動作情報が示す繰り返し動作を前記調整手段により調整された速度で行うオブジェクトを示す映像を表示手段に表示させる表示制御手段と、を備えることを特徴とする。
請求項10に記載の発明は、請求項1乃至5、及び7乃至9の何れか1項に記載の情報処理装置において、予め定められた繰り返し動作を示す所定動作情報を複数記憶する所定動作情報記憶手段を更に備え、前記決定手段は、前記所定動作情報記憶手段に記憶された前記複数の所定動作情報のうち、前記検出手段により検出された動作と類似する動作を示す所定動作情報を決定し、前記検出手段により検出された動作と類似する動作を示す所定動作情報が前記所定動作情報記憶手段に記憶されていない場合、前記検出手段により検出された動作を示す動作情報を、前記オブジェクトが行う繰り返し動作を示す前記動作情報に決定し、前記表示制御手段は、前記決定手段により決定された前記所定動作情報又は前記動作情報が示す動作を行う前記オブジェクトを示す映像を前記表示手段に表示させることを特徴とする。
請求項11に記載の発明は、請求項1乃至の何れか1項に記載の情報処理装置において、前記決定手段により決定された前記動作情報が示す繰り返し動作が行われる速さを、前記繰り返し動作の周期と、前記取得手段により取得された前記楽曲データが示す楽曲のテンポとに基づいて調整する調整手段を更に備え、前記表示制御手段は、前記決定手段により決定された前記動作情報が示す繰り返し動作を前記調整手段により調整された速度で行う前記オブジェクトを示す映像を前記表示手段に表示させることを特徴とする。
請求項12に記載の発明は、楽曲を示す楽曲データを取得する取得ステップと、前記取得ステップにより取得された前記楽曲データが示す楽曲を出力手段により出力させる出力制御ステップと、前記出力手段による前記楽曲の出力中に、ユーザの動作を検出する検出ステップと、前記検出ステップにより前記ユーザの動作の検出が開始されてから前記検出ステップにより所定運動量以下のユーザの動作が検出されるまでの間に前記検出ステップにより検出された動作に基づいて、繰り返し動作を示す動作情報を決定する決定ステップと、前記出力手段による前記楽曲の出力中に、前記決定ステップにより決定された前記動作情報が示す繰り返し動作を行うオブジェクトを示す映像を表示手段に表示させる表示制御ステップと、をコンピュータに実行させることを特徴とする。
請求項1、6乃至9及び12に記載の発明によれば、ユーザが動作を行うことに応じて、繰り返し動作を行うオブジェクトの映像が表示される。そのため、オブジェクトを観客としてユーザが見ることにより、あたかも観客の前で歌っているかのような臨場感を高めることができる。
更に請求項1及び12に記載の発明によれば、ユーザの動作の終わりを適切に検出することができる。
更に請求項6に記載の発明によれば、ユーザが何らかの基準に合わない動作を行ったとしても、その基準に合う繰り返し動作を行うオブジェクトを表示させることができる。
また、予め定められた繰り返し動作と非類似の動作をユーザが行った場合にも、繰り返し動作を行うオブジェクトを表示させることができる。
更に請求項7に記載の発明によれば、演奏パートの単位で、繰り返し動作を行うオブジェクトを表示させることができる。
更に請求項8に記載の発明によれば、ユーザが動作を行ったにも関わらず、繰り返し動作を行うオブジェクトがいつまで経っても表示されないという事態を防止することができる。
更に請求項9に記載の発明によれば、出力される楽曲のテンポに合わせて繰り返し動作を行うオブジェクトを表示させることができる。
請求項3に記載の発明によれば、短くとも第1所定時間の間のユーザの動作に基づいて、繰り返し動作を決定することができる。
請求項10に記載の発明によれば、ユーザが何らかの基準に合わない動作を行ったとしても、その基準に合う繰り返し動作を行うオブジェクトを表示させることができる。
また、予め定められた繰り返し動作と非類似の動作をユーザが行った場合にも、繰り返し動作を行うオブジェクトを表示させることができる。
請求項に記載の発明によれば、演奏パートの単位で、繰り返し動作を行うオブジェクトを表示させることができる。
請求項に記載の発明によれば、繰り返し動作が検出された動作をユーザが行った演奏パートと同じ種類の演奏パートが出力されているときに、繰り返し動作を行うオブジェクトを表示させることができる。
請求項に記載の発明によれば、ユーザが動作を行ったにも関わらず、繰り返し動作を行うオブジェクトがいつまで経っても表示されないという事態を防止することができる。
請求項11に記載の発明によれば、出力される楽曲のテンポに合わせて繰り返し動作を行うオブジェクトを表示させることができる。
一実施形態のカラオケシステムSの概要構成例を示す図である。 (A)は、楽曲リストの構成例を示す図である。(B)は、楽曲構成情報の構成例を示す図である。(C)は、動作検出用パラメータ情報の構成例を示す図である。(D)は、既定繰り返し動作の内容の例を示す図である。(E)は、RAMに記憶された相対運動量の例である。 (A)は、入力動作実行要求情報の表示例を示す図である。(B)は、歌唱者が手を振る動作行う様子の一例を模式的に示す図である。 動作データのデータフローの一例を示す図である。 カラオケ装置2における演奏描画メイン処理の一例を示すフローチャートである。 (A)は、カラオケ装置2における観客動作設定処理の第1の例を示すフローチャートである。(B)は、カラオケ装置2における観客動作設定処理の第2の例を示すフローチャートである。 (A)は、カラオケ装置2における指定動作生成処理の一例を示すフローチャートである。(B)は、カラオケ装置2における入力繰り返し動作生成処理の一例を示すフローチャートである。(C)は、カラオケ装置2における既定繰り返し動作取得処理の一例を示す図である。
以下、本発明の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、例えばカラオケ店舗において利用されるカラオケシステムに対して、本発明を適用した場合の実施形態である。
[1.カラオケシステムの構成及び動作の概要]
始めに、図1を参照して、本実施形態のカラオケシステムの構成の概要を説明する。図1は、本実施形態のカラオケシステムSの概要構成例を示す図である。図1に示すように、カラオケシステムSは、選曲装置1、カラオケ装置2、及び距離画像カメラ3を含んで構成される。カラオケ装置2は、本発明の情報処理装置の一例である。選曲装置1、カラオケ装置2、及び距離画像カメラ3は、例えば、カラオケ店舗のカラオケルーム(客室)に設置される。選曲装置1は、例えば赤外線により同室内のカラオケ装置2と通信可能になっている。選曲装置1及びカラオケ装置2は、例えばLAN(Local Area Network)、及びアクセスポイントAPを介して互いに通信可能になっている。カラオケ装置2と距離画像カメラ3とは接続可能である。例えば、USB(Universal Serial Bus)ケーブル等を用いて接続されてもよいし、LANを介して接続されてもよい。
選曲装置1は、カラオケ店舗の客室を利用するユーザがカラオケ楽曲を選択するために用いられる。
距離画像カメラ3は、距離画像を撮影可能なカメラである。距離画像は、距離画像カメラ3から被写体までの距離を画素ごとに表す画像である。距離画像カメラ3は、歌唱者が楽曲に合わせて行う動作を検出するために用いられる。具体的に、距離画像カメラ3は、距離画像カメラ3が設置された位置から歌唱者の複数の身体部位までの距離を検出する。距離が検出される身体部位は、例えば、首、肩、肘、手首、腰、膝、くるぶし等の関節であってもよい。例えば、距離画像カメラ3は、被写体までの距離を示す画素値を画素ごとに示す距離画像データを生成し、距離画像データをカラオケ装置2へ送信する。距離画像カメラ3は、所定のフレームレートで距離画像を撮影し、距離画像を撮影するごとに距離画像データを送信する。このときのフレームレートは、例えばディスプレイ5が映像を表示する際のフレームレートと同一であってもよい。距離画像カメラ3は、例えば、赤外線を発光するLED(light-emitting diode)と、赤外線を受光するCCDイメージセンサを備えてもよい。この場合、距離画像カメラ3は、例えば、LEDから発光された赤外線が被写体に反射してCCDイメージセンサに受光されるまでの時間を計測する。そして、距離画像カメラ3は、計測した時間に基づいて、被写体までの距離を画素ごとに決定する。また、距離画像カメラ3は、例えば、複数のCCDイメージセンサを備えるステレオカメラであってもよい。この場合、距離画像カメラ3は、複数のCCDイメージセンサで撮影した複数の画像に基づいて被写体までの距離を画素ごとに計算し、距離画像データを生成してもよい。
カラオケ装置2は、ユーザにより選曲されたカラオケ楽曲を再生する演奏装置である。カラオケ装置2は、スピーカ4及びディスプレイ5と接続されている。スピーカ4は、本発明の出力手段の一例である。ディスプレイ5は、本発明の表示手段の一例である。カラオケ装置2は、スピーカ4によりカラオケの楽曲を出力する。カラオケ楽曲の再生中、カラオケ装置2は、距離画像カメラ3から所定のフレームレートで送信されてくる距離画像に基づいて、歌唱者の動作を検出する。カラオケ装置2は、検出された動作に基づいて、繰り返し動作を決定する。繰り返し動作は、複数回繰り返して行われる動作である。カラオケ楽曲の再生中、カラオケ装置2は、決定された繰り返し動作を行う観客キャラクターを示す映像をディスプレイ5に表示する。観客キャラクターは、例えば、人間、動物、仮想上の生き物、ロボット等のかたちをしたオブジェクトである。カラオケ装置2は、1つの観客キャラクターを表示させてもよいし、複数の観客キャラクターを表示させてもよい。
[2.カラオケ装置2の構成]
次に、図1及び図2を参照して、カラオケ装置2の構成について説明する。図1に示すように、カラオケ装置2は、制御部21、記憶部22、ビデオRAM23、映像再生部24、映像制御部25、マイク制御部26、シンセサイザ27、ミキシングアンプ28、操作部29a、操作処理部29b、赤外線受信部29c、及びLAN通信部29d等を備えて構成される。制御部21は、CPU、ROM、及びRAM等により構成される。制御部21は、時計機能及び計時機能を有する。記憶部22は、例えば、ハードディスク等により構成される。記憶部22は、所定動作情報記憶手段及び種類情報記憶手段のそれぞれの一例である。所定動作情報記憶手段及び種類情報記憶手段は、所定動作情報記憶手段及び種類情報記憶手段が同一の記憶デバイスであってもよいし、互いに異なる記憶デバイスであってもよい。記憶部22には、OS、カラオケ装置処理プログラム、ミュージックシーケンサ、3Dエンジン等のプログラムが記憶されている。制御部21は、OS及びカラオケ装置処理プログラムを実行することにより、カラオケ装置2全体を統括制御する。カラオケ装置処理プログラムは、所定のサーバ装置からダウンロードされてもよいし、記録媒体に記録されてドライブ装置を介して読み込まれるようにしてもよい。
また、記憶部22には、楽曲データ、楽曲リスト、楽曲構成情報、動作検出用パラメータ情報、既定繰り返し動作データ、通常動作データが記憶される。楽曲データは、カラオケ楽曲を示す。また、楽曲データは、カラオケ楽曲をスピーカ4により出力させるデータである。楽曲データの例として、例えば、MIDI(Musical Instrument Digital Interface)データ、生演奏の音をPCM(Pulse Code Modulation)等で符号化したデータ等が上げられる。本実施形態においては、楽曲データとしてMIDIデータを用いる場合を例として説明する。楽曲データは、カラオケ楽曲のオリジナルのテンポを含む。カラオケ楽曲ごとに、楽曲データと楽曲IDとが対応付けて記憶部22に記憶される。楽曲IDは、カラオケ楽曲を識別可能な識別情報である。例えば、楽曲IDは、楽曲番号であってもよい。
図2(A)は、楽曲リストの構成例を示す図である。楽曲リストは、カラオケ楽曲に関する情報が登録されているリストである。具体的に楽曲リストには、カラオケ楽曲ごとに、楽曲ID及び観客動作指定パート種別が登録される。観客動作指定パート種別は、カラオケ装置2により決定された繰り返し動作を行う観客キャラクターの映像が表示される演奏パートの種別である。すなわち、観客動作指定パート種別が示す演奏パートがスピーカ4から出力されているとき、カラオケ装置2により決定された繰り返し動作を行う観客キャラクターの映像が表示される。カラオケ楽曲は、複数の演奏パートで構成されている。演奏パートの種別の例として、イントロ、Aメロ、Bメロ、間奏、サビ、アウトロ等が挙げられる。1つの楽曲の中に種別が互いに同じである複数の演奏パートが含まれていてもよい。1つの楽曲に対して1つの観客動作指定パート種別が設定されてもよいし、複数の観客動作指定パート種別が設定されてもよい。また、例えばカラオケシステムSの管理者が、カラオケ楽曲ごとに、観客動作指定パート種別を設定してもよい。
図2(B)は、楽曲構成情報の構成例を示す図である。楽曲構成情報は、カラオケ楽曲を構成する複数の演奏パートに関する情報である。カラオケ楽曲ごとに、楽曲構成情報と楽曲IDとが対応付けて記憶部22に記憶される。具体的に、楽曲構成情報は、カラオケ楽曲を構成する演奏パートごとに、演奏番号及びパート種別を含む。演奏番号は、カラオケ楽曲を構成する複数の演奏パートのうち、パート種別が示す種別の演奏パートが演奏される順番を示す番号である。
図2(C)は、動作検出用パラメータ情報の構成例を示す図である。動作検出用パラメータ情報は、歌唱者の動作を検出するための予め定められたパラメータを含む。具体的に、動作検出用パラメータ情報は、検出判定時間、検出判定運動量、最大取得時間、及び最低取得時間を含む。検出判定時間及び検出判定運動量は、歌唱者の動作の検出を終了させるか否かを判定するためのパラメータである。具体的に、制御部21は、歌唱者の動作の検出中、検出判定時間が示す直近所定時間の間における歌唱者の身体部位の運動量が検出判定運動量以下である場合、歌唱者の動作の検出を終了させる。最大取得時間は、歌唱者の動作を検出する時間の最大値である。最小取得時間は、歌唱者の動作を検出する時間の最小値である。
既定繰り返し動作データは、観客キャラクターにより行わせることが可能な予め定められた繰り返し動作を定義する動作データである。動作データは、観客キャラクターに行わせる動作又は歌唱者が行った動作を示すデータである。動作データは、時系列に沿って、動作の進行に応じた三次元空間における観客キャラクター又は歌唱者の各身体部位の座標を含む。例えば、動作の開始から、ディスプレイ5に表示される映像のフレームレートの逆数の時間が経過するごとに、経過した時間と、各身体部位の座標とが対応付けられていてもよい。身体部位の座標は、例えば三次元座標である。しかしながら、身体部位の座標は二次元座標であってもよい。予め定められた繰り返し動作を、既定繰り返し動作という。既定繰り返し動作は、例えば自然な動作である。既定繰り返し動作ごとに、既定繰り返し動作データと既定動作IDとが対応付けて記憶部22に記憶される。既定動作IDは、既定繰り返し動作を識別する識別情報である。図2(D)は、既定繰り返し動作の内容の例を示す図である。既定繰り返し動作として、例えば、拳を上げる動作、手拍子、手を横に振る動作、ジャンプ、回転等が挙げられる。例えば、全ての既定繰り返し動作のテンポが一致するように、各既定繰り返し動作データが生成されてもよい。既定繰り返し動作のテンポは、例えば既定繰り返し動作が1秒間に行われる回数であってもよい。
通常動作データは、歌唱者の動作に基づいて繰り返し動作が決定されていない状態において、観客キャラクターにより行われる動作を示す動作データである。
制御部21は、3Dエンジンを実行して、動作データに基づいて、観客キャラクターの静止画像を順次生成する。生成された静止画像の映像信号を制御部21がビデオRAM23へ順次出力することで、ディスプレイ5には、動作を行う観客キャラクターの映像が表示される。
制御部21は、ミュージックシーケンサを実行することにより、設定されたテンポに従って各種のイベントを発生させる。イベントとして、例えば、MIDIクロック、MIDIイベント、演奏パート切り替わりイベント等がある。MIDIクロックは、再生速度に応じた時間間隔で出力されるイベントである。MIDIイベントは、楽曲の再生を制御するためのイベントである。制御部21は、MIDIイベントをシンセサイザ27へ出力する。これにより、制御部21は、スピーカ4によりカラオケ楽曲を出力させる。演奏パート切り替わりイベントは、再生される演奏パートが切り替わったことを通知するイベントである。
シンセサイザ27は、MIDIイベントに基づいて、カラオケ楽曲の音声信号をミキシングアンプ28へ出力する。マイク制御部26は、マイクにより集音されたユーザの音声信号をミキシングアンプ28へ出力する。また、マイク制御部26は、マイクからの音声信号を所定のサンプリング周波数でサンプリングし、サンプルデータを制御部21へ出力する。ミキシングアンプ28は、シンセサイザ27からの音声信号とマイク制御部26からの音声信号とをミキシングしてスピーカ4へ出力する。また、映像信号等はビデオRAM23及び映像再生部24により再生される。そして、映像制御部25は、再生された映像信号をディスプレイ5へ出力する。また、制御部21は、ユーザによる操作部29aからの指示を、操作処理部29bを介して受け付ける。また、制御部21は、赤外線受信部29cを介して、選曲装置1からの各種指令を受信することができる。LAN通信部29dは、有線LANに接続して通信を行うためのものである。
[3.繰り返し動作を行う観客キャラクターの表示]
歌唱者があたかも観客の前で歌っているかのような臨場感を高めるため、制御部21は、カラオケ楽曲の再生中における歌唱者の動作に基づく繰り返し動作を決定し、決定された繰り返し動作を行う観客キャラクターをディスプレイ5に表示させる。観客キャラクターに行わせる繰り返し動作を、指定動作という。
先ず、制御部21は、カラオケ楽曲の再生中、距離画像カメラ3から所定のフレームレートで送信されてくる距離画像に基づいて、歌唱者の動作を検出する。検出される動作を、入力動作という。例えば、制御部21は、距離画像ごとに、距離画像から歌唱者の各身体部位の座標を検出する。制御部21は、距離画像ごとに検出された各身体部位を時系列に沿って含む動作データを生成する。この動作データを入力動作データという。入力動作データは、歌唱者の入力動作を示すデータである。これにより、制御部21は、歌唱者の動作を検出する。
距離画像から座標を取得する方法について説明する。例えば、機械学習を用いる方法がある。例えば、カラオケシステムSの管理者は、人間が様々な動作を行う様子を映した多数の距離画像を用意する。また、管理者は、距離画像に対応する各身体部位の座標を用意する。例えば、管理者が手作業で座標を作成してもよい。そして、距離画像と座標の組を教師データとする。距離画像は例題に相当し、座標は解答に相当する。管理者は、教師データを機械学習用の所定の情報処理に入力する。情報処理装置は、教師データを用いて所定の機械学習を実行し、距離画像から各身体部位の座標を推定するための推測モデルの情報を生成する。カラオケ装置2は、生成された推測モデルの情報を予め記憶する。カラオケ装置2は、推測モデルの情報に基づいて、距離画像カメラ3から受信した距離画像データから各身体部位の座標を決定する。距離画像データから座標を取得する方法については、例えば、2011年にIEEE CVPR 2011にてJamie Shottonらにより発表された「Real-Time Human Pose Recognition in Parts from Single Depth Images」に開示されているので、詳しい説明は省略する。なお、距離画像カメラ3が、例えば、距離画像と推測モデルの情報に基づいて、各身体部位の座標を決定してもよい。そして、カラオケ装置2は、距離画像カメラ3から座標を取得してもよい。
歌唱者の動作の検出を開始するタイミングの例を説明する。例えば、制御部21は、カラオケ楽曲を構成する複数の演奏パートのうち、観客動作指定パート種別の演奏パートの
再生が開始したとき、歌唱者に対して動作の実行を要求する入力動作実行要求情報をディスプレイ5に表示させてもよい。そして、制御部21は、入力動作実行要求情報が表示されたときから、歌唱者の動作の検出を開始してもよい。図3(A)は、入力動作実行要求情報の表示例を示す図である。例えば、図3(A)に示すように、制御部21は、歌唱者キャラクター110及び観客キャラクター120とともに、入力動作実行要求情報130をディスプレイ5に表示させてもよい。歌唱者キャラクター110は、歌唱者を示すオブジェクトである。入力動作実行要求情報130は、例えば「観客にしてもらう動作を行ってください!」等のメッセージであってもよい。表示された入力動作実行要求情報を見ることで、歌唱者は動作を開始することができる。
また例えば、制御部21は、直近の検出判定時間における歌唱者の身体部位の運動量が検出判定運動量以上になったとき、歌唱者の動作の検出を開始してもよい。例えば、カラオケ楽曲の再生中、制御部21は、距離画像カメラ3から送信されてくる距離画像ごとに、各身体部位の座標を検出する。制御部21は、今回検出した身体部位の座標と、前回検出した身体部位の座標との差の全身体部位についての合計値を、相対運動量として計算する。そして、制御部21は、計算した相対運動量を、フレームレートに応じた時間間隔ごとにRAMに記憶させる。図2(E)は、RAMに記憶された相対運動量の例である。制御部21は、RAMに記憶された相対運動量のうち、直近の検出判定時間の間の相対運動量の合計を、歌唱者の身体部位の運動量として計算する。
歌唱者の動作の検出を終了させるタイミングの例を説明する。例えば、制御部21は、歌唱者の動作の検出中、直近の検出判定時間における歌唱者の身体部位の運動量が検出判定運動量以下になったとき、歌唱者の動作の検出を終了してもよい。すなわち、制御部21は、歌唱者の動作の検出が開始されてから、検出判定運動量以下の運動量が検出されるまでの間に検出された動作の入力動作データを生成する。これにより、歌唱者の動作の終わりを適切に検出することができる。
また例えば、制御部21は、歌唱者の動作の検出が開始されてから最低取得時間が経過した後で、直近の検出判定時間における歌唱者の身体部位の運動量が検出判定運動量以下になったとき、歌唱者の動作の検出を終了してもよい。すなわち、制御部21は、歌唱者の動作の検出が開始されてから最低取得時間が経過するまでは、直近の検出判定時間における歌唱者の身体部位の運動量が検出判定運動量以下になったとしても、検出を継続する。これにより、短くとも最低取得時間の間の歌唱者の動作に基づいて、繰り返し動作を決定することができる。
また例えば、歌唱者の動作の検出が開始されてから最大取得時間が経過するまでに、観客キャラクターに行わせる繰り返し動作が決定されなかった場合、制御部21は、この時点で歌唱者の動作の検出を終了してもよい。すなわち、制御部21は、歌唱者の動作の検出が開始されてから最大取得時間が経過するまでの間に検出された動作の入力動作データを生成する。これにより、歌唱者が動作を行ったにも関わらず、繰り返し動作を行う観客キャラクターがいつまで経っても表示されないという事態を防止することができる。なお、本実施形態においては、カラオケ楽曲を構成する全演奏パートについて最大取得時間は共通である。しかしながら、最大取得時間は、例えば歌唱者の動作の検出が開始されてから、その検出が開始されたときにスピーカ4により出力されていた演奏パートが終了するまでの時間であってもよい。
歌唱者の動作を検出すると、制御部21は、検出された動作を示す入力動作データに基づいて、指定動作データを決定する。指定動作データは、観客キャラクターに行わせる繰り返し動作である指定動作を示す動作データである。例えば、制御部21は、入力動作データそのものを、指定動作データに決定してもよい。
また例えば、制御部21は、入力動作データに基づいて、検出された動作の中から、歌唱者が繰り返し行った動作を特定してもよい。歌唱者が繰り返し行った動作を、入力繰り返し動作という。そして、制御部21は、入力繰り返し動作に基づいて、指定動作データを決定してもよい。歌唱者が同じ動作を繰り返し行うと、同じ姿勢が周期的に現れる。図3(B)は、歌唱者が手を振る動作を行う様子の一例を模式的に示す図である。図3(B)に示すように、或る時刻T1において歌唱者が例えば左手を挙げて、手を振る動作を開始させる。歌唱者は、左手を一度左方向に移動させて、右方向に移動させる。すると、時刻T2において歌唱者の左手の位置は、手を振る動作を開始した時点に戻る。歌唱者がこのような動作を繰り返し行うことにより、手を振る動作が繰り返し行われる。制御部21は、例えば歌唱者が或る姿勢をとった時刻T1から所定の運動量以上の身体部位の移動の後、歌唱者が同じ姿勢をとった時刻T2を特定してもよい。例えば、制御部21は、時刻T1の各身体部位の座標と、時刻T2の各身体部位の座標との差が所定値未満である場合、時刻T1における歌唱者の姿勢と時刻T2における歌唱者の姿勢とが同じであると判定してもよい。次いで、制御部21は、時刻T1〜T2の間の動作と、時刻T2〜T3の間の動作とを比較する。例えば時刻T2から時刻T3までの長さは、時刻T1から時刻T2までの長さと同じであってもよい。時刻T1〜T2の間の動作と時刻T2〜T3の間の動作とが同じである場合、制御部21は、歌唱者が繰り返し動作を行ったと判定してもよい。例えば、制御部21は、入力動作データにおいて、時刻T1〜T2の間の動作中における各身体部位の座標と、時刻T2〜T3の間の動作中における各身体部位の座標との差を時系列に沿って計算してもよい。そして、制御部21は、計算した差の平均値が所定値以下である場合、同じ動作であると判定してもよい。歌唱者が繰り返し動作を行ったと判定した場合、制御部21は、例えば時刻T1〜T2の間の動作を、入力繰り返し動作として抽出してもよい。例えば、制御部21は、入力動作データに含まれる身体部位の座標のうち、時刻T1〜T2の間の身体部位の座標を、入力繰り返し動作を示す動作データとして抽出する。この動作データを、入力繰り返し動作データという。入力動作の中から同じ動作を特定することができなかった場合、制御部21は、指定動作データを決定しなくてもよい。また、制御部21は、例えば自己相関関数により、入力動作データから入力繰り返し動作を抽出してもよい。
また例えば、制御部21は、入力動作又は入力繰り返し動作に基づいて、複数の既定動作データの中から、指定動作データを決定してもよい。これにより、歌唱者が望ましくない動作を行ったとしても、望ましい繰り返し動作を行う観客キャラクターを表示させることができる。例えば、制御部21は、入力動作データ又は入力繰り返し動作データに類似する既定繰り返し動作データを、指定動作データに決定してもよい。例えば、制御部21は、入力動作データ又は入力繰り返し動作データと、記憶部22に記憶された各既定繰り返し動作データとの類似度を計算する。例えば、制御部21は、入力動作データ又は入力繰り返し動作データに含まれる身体部位の座標と、既定繰り返し動作データに含まれる身体部位の座標との差を時系列に沿って計算する。そして、制御部21は、計算した差の平均値に基づいて、類似度を計算してもよい。制御部21は、計算した類似度が所定値以上の既定繰り返し動作データのうち最大の類似度が計算された既定繰り返し動作データを、指定動作の動作データに決定してもよい。類似度が所定値以上の既定繰り返し動作データがなかった場合、制御部21は、例えば入力動作データ又は入力繰り返し動作データを、指定動作データに決定してもよい。
制御部21は、決定した指定動作データが示す指定動作が行われる速度を、指定動作の周期と、スピーカ4から出力中のカラオケ楽曲のテンポに基づいて調整してもよい。例えば、制御部21は、楽曲のテンポの逆数の自然数倍の周期で繰り返し動作が行われるように、繰り返し動作の周期を調整してもよい。例えば、制御部21は、繰り返し動作の周期が楽曲のテンポの逆数の自然数倍の周期と一致するように、指定動作データを伸縮させてもよい。これにより、スピーカ4から出力される楽曲のテンポに合わせて繰り返し動作を行う観客キャラクターを表示させることができる。指定動作データの長さを短くする場合、制御部21は、例えば動作データから、指定動作の元の周期と楽曲のテンポの逆数の自然数倍の周期との比率に応じた時間間隔で、身体部位の座標を削除してもよい。この場合、1回の指定動作の時間が短くなり、指定動作が行われる速度が速くなる。指定動作データの長さを長くする場合、制御部21は、例えば動作データに、指定動作の元の周期と楽曲のテンポの逆数の自然数倍の周期との比率に応じた時間間隔で、身体部位の座標を追加する。追加される身体部位の座標は、例えば座標が追加される位置の前の座標と後ろの座標との平均値等であってもよい。この場合、1回の指定動作の時間が長くなり、指定動作が行われる速度が遅くなる。
指定動作データを決定した場合、制御部21は、決定した指定動作データに基づいて、指定動作を繰り返し行う観客キャラクターを示す映像をディスプレイ5に表示させる。
制御部21は、例えば決定した指定動作データを、スピーカ4から出力中の楽曲を構成する複数の演奏パートのうちの何れかに割り当ててもよい。そして、制御部21は、割り当てられた演奏パートがスピーカ4から出力されているときに、指定動作を繰り返し行う観客キャラクターを示す映像を表示させてもよい。これにより、演奏パートの単位で、指定動作を繰り返し行う観客キャラクターを表示させることができる。例えば、制御部21は、決定した指定動作データを、指定動作データが決定された入力動作が検出されたときに出力されていた演奏パートのパート種別と対応付けてRAMに記憶させてもよい。そして、制御部21は、記憶されたパート種別の演奏パートが出力されているとき、そのパート種別に対応付けてRAMに記憶された指定動作データが示す指定動作を繰り返し行う観客キャラクターを示す映像を表示させてもよい。これにより、検出された動作を歌唱者が行った演奏パートと同じ種類の演奏パートが出力されているときに、繰り返し動作を行う観客キャラクターを表示させることができる。
また例えば、制御部21は、演奏パートとは無関係に、決定した指定動作を繰り返し行う観客キャラクターを表示させてもよい。例えば、制御部21は、新しい指定動作データを決定することができたタイミングごとに、新しい指定動作を行う観客キャラクターの表示を開始してもよい。
[4.カラオケシステムSの動作]
次に、カラオケシステムSの動作について説明する。図4は、動作データのデータフローの一例を示す図である。図4に示すように、制御部21は、検出された歌唱者の動作を示す入力動作データを生成する(ステップS1)。次いで、制御部21は、入力動作データに基づいて、歌唱者の動作の中で繰り返し行われた動作を示す入力繰り返し動作データを生成する(ステップS2)。次いで、制御部21は、入力繰り返し動作データに類似する既定繰り返し動作データを記憶部22から検索する(ステップS3)。そして、制御部21は、検索された既定繰り返し動作データを、未修正繰り返し動作データに設定する(ステップS4)。一方、入力繰り返し動作データに類似する既定繰り返し動作データが存在しない場合、制御部21は、入力繰り返し動作データを、未修正繰り返し動作データに設定する。制御部21は、再生されるカラオケ楽曲のテンポに基づいて未修正繰り返し動作データを伸縮調整することにより、修正済繰り返し動作データを生成する(ステップS5)。修正済繰り返し動作データは、伸縮調整された繰り返し動作を示す動作データである。次いで、制御部21は、修正済繰り返し動作データを指定動作データに設定する(ステップS6)。指定動作データは、決定された繰り返し動作を示す動作データである。そして、制御部21は、指定動作データを観客動作データに設定する(ステップS7)。観客動作データは、観客キャラクターに行わせる動作を示す動作データである。指定動作データが決定されていない場合、観客動作データには通常動作データが設定される。
図5は、カラオケ装置2における演奏描画メイン処理の一例を示すフローチャートである。演奏描画メイン処理は、カラオケ装置2が起動されたときに開始される。図5に示すように、制御部21は、再生されるカラオケ楽曲の情報を取得する(ステップS11)。具体的に、制御部21は、選曲装置1を用いて選択されたカラオケ楽曲の楽曲IDを選曲装置1から取得する。次いで、制御部21は、取得した楽曲IDに対応する楽曲データ及び楽曲構成情報を記憶部22から取得する。次いで、制御部21は、取得した楽曲IDに対応する観客動作指定パート種別を記憶部22から取得する(ステップS12)。次いで、制御部21は、演奏番号Nを1に設定する。次いで、制御部21は、観客動作データに、記憶部22に記憶された通常動作データを設定する(ステップS13)。
次いで、制御部21は、楽曲データに基づいて、カラオケ楽曲の再生を開始する(ステップS14)。このとき、制御部21は、楽曲データに含まれるカラオケ楽曲のテンポに従って、カラオケ楽曲を再生する。これにより、スピーカ4から、カラオケ楽曲が出力される。また、制御部21は、距離画像カメラ3による距離画像の撮影を開始させ、距離画像カメラ3から距離画像を受信する。そして、制御部21は、距離画像に基づく歌唱者の各身体部位の座標の検出、及び身体部位の座標に基づく相対運動量のRAMへの記憶を開始する。
次いで、制御部21は、3Dエンジンを実行することにより、現在の観客動作データに基づいて、観客動作データが示す動作を行う観客キャラクターの映像の表示を開始させる(ステップS15)。制御部21は、フレームレートに従って観客動作データから各身体部位の座標を取得しながら、観客キャラクターの映像を含む静止画像を順次生成し、生成した静止画像をビデオRAM23へ順次出力する。次いで、制御部21は、観客動作設定処理を実行する(ステップS16)。観客動作設定処理は、観客動作データの設定を行うための処理である。観客動作設定の詳細は後述する。次いで、制御部21は、カラオケ楽曲の再生が終了するか否かを判定する(ステップS17)。このとき、制御部21は、カラオケ楽曲の再生が終了しないと判定した場合には(ステップS17:NO)、ステップS16に進む。一方、制御部21は、カラオケ楽曲の再生が終了すると判定した場合には(ステップS17:YES)、ステップS18に進む。
ステップS18において、制御部21は、3Dエンジンの実行を停止することにより、観客動作データが示す動作を行う観客キャラクターの映像の表示を停止させる。次いで、制御部21は、カラオケ装置2が停止するか否かを判定する(ステップS19)。このとき、制御部21は、カラオケ装置2が停止しないと判定した場合には(ステップS19:NO)、ステップS11に進む。一方、制御部21は、カラオケ装置2が停止すると判定した場合には(ステップS19:YES)、演奏描画メイン処理を終了させる。
図6(A)は、カラオケ装置2における観客動作設定処理の第1の例を示すフローチャートである。図6(A)に示す処理例は、観客動作指定パート種別の演奏パートの再生中に入力動作実行要求情報を表示させ、観客動作指定パート種別の演奏パートの再生中の歌唱者の動作を検出する場合の処理例である。また、図6(A)に示す処理例は、検出された動作に基づいて決定された繰り返し動作を、観客動作指定パート種別の演奏パートを再生しているときに、観客キャラクターが行う映像を表示する場合の処理例である。
図6(A)に示すように、制御部21は、ミュージックシーケンサから演奏パート切り替わりイベントが出力されることにより、演奏パートの切り替わりを検知したか否かを判定する(ステップS21)。このとき、制御部21は、演奏パートの切り替わりを検知していないと判定した場合には(ステップS21:NO)、観客動作設定処理を終了させる。一方、制御部21は、演奏パートの切り替わりを検知したと判定した場合には(ステップS21:YES)、ステップS22に進む。
ステップS22において、制御部21は、演奏番号Nに1を加算する。次いで、制御部21は、楽曲構成情報から演奏番号Nに対応するパート種別を取得する。次いで、制御部21は、取得したパート種別に対応する指定動作データが既に記憶部22に記憶されているか否かを判定する。このとき、制御部21は、指定動作データが記憶部22に記憶されていると判定した場合には(ステップS22:YES)、ステップS23に進む。一方、制御部21は、指定動作データが記憶部22に記憶されていないと判定した場合には(ステップS22:NO)、ステップS24に進む。
ステップS23において、制御部21は、観客動作データに、取得したパート種別に対応する指定動作データを設定する。次いで、制御部21は、観客動作設定処理を終了させる。3Dエンジンを実行中の制御部21は、新しく設定された観客動作データに基づいて、繰り返し動作を行う観客キャラクターの映像の表示を開始させる。
ステップS24において、制御部21は、観客動作データに、通常動作データを設定する。次いで、制御部21は、演奏番号Nに対応するパート種別が、観客動作指定パート種別のうちの何れかと一致するか否かを判定する(ステップS25)。このとき、制御部21は、演奏番号Nに対応するパート種別が、観客動作指定パート種別のうち何れとも一致しないと判定した場合には(ステップS25:NO)、観客動作設定処理を終了させる。この場合、3Dエンジンを実行中の制御部21は、観客動作データとして設定された通常動作データが示す動作を行う観客キャラクターの映像の表示を開始させる。一方、制御部21は、演奏番号Nに対応するパート種別が、観客動作指定パート種別のうち何れかと一致すると判定した場合には(ステップS25:YES)、ステップS26に進む。
ステップS26において、制御部21は、入力動作実行要求情報をディスプレイ5に表示させる。次いで、制御部21は、指定動作生成処理を実行する(ステップS27)。指定動作生成処理は、指定動作データを生成するための処理である。指定動作生成処理の詳細は後述する。次いで、制御部21は、指定動作生成処理において指定動作データの生成が成功したか否かを判定する(ステップS28)。このとき、制御部21は、指定動作データの生成が失敗したと判定した場合には(ステップS28:NO)、ステップS30に進む。この場合、3Dエンジンを実行中の制御部21は、観客動作データとして設定された通常動作データが示す動作を行う観客キャラクターの映像の表示を開始させる。一方、制御部21は、指定動作データの生成が成功したと判定した場合には(ステップS28:YES)、ステップS29に進む。
ステップS29において、制御部21は、観客動作データに、指定動作生成処理で生成されてRAMに記憶された指定動作データを設定して、ステップS30に進む。3Dエンジンを実行中の制御部21は、新しく設定された観客動作データに基づいて、繰り返し動作を行う観客キャラクターの映像の表示を開始させる。
ステップS30において、制御部21は、指定動作生成処理による指定動作データの生成の成否を示す情報をディスプレイ5に表示して、観客動作設定処理を終了させる。
図6(B)は、カラオケ装置2における観客動作設定処理の第2の例を示すフローチャートである。図6(B)に示す例は、直近の運動量が検出判定運動量以上である場合に歌唱者の動作の検出を開始する場合の例である。
図6(B)に示すように、制御部21は、直近の検出判定時間の間にRAMに記憶された相対運動量の合計を、直近の運動量として計算する。そして、制御部21は、計算した運動量が、検出判定運動量以上であるか否かを判定する(ステップS31)。このとき、制御部21は、計算した運動量が検出判定運動量以上ではないと判定した場合には(ステップS31:NO)、観客動作設定処理を終了させる。一方、制御部21は、計算した運動量が検出判定運動量以上であると判定した場合には(ステップS31:YES)、ステップS32に進む。
ステップS32において、制御部21は、指定動作生成処理を実行する。次いで、制御部21は、指定動作生成処理において指定動作データの生成が成功したか否かを判定する(ステップS33)。このとき、制御部21は、指定動作データの生成が失敗したと判定した場合には(ステップS33:NO)、観客動作設定処理を終了させる。一方、制御部21は、指定動作データの生成が成功したと判定した場合には(ステップS33:YES)、ステップS34に進む。
ステップS34において、制御部21は、観客動作データに、指定動作生成処理で生成されてRAMに記憶された指定動作データを設定して、観客動作設定処理を終了させる。3Dエンジンを実行中の制御部21は、新しく設定された観客動作データに基づいて、繰り返し動作を行う観客キャラクターの映像の表示を開始させる。
図7(A)は、カラオケ装置2における指定動作生成処理の一例を示すフローチャートである。図7(A)に示すように、制御部21は、入力繰り返し動作生成処理を実行する(ステップS41)。入力繰り返し動作生成処理は、入力繰り返し動作データを生成するための処理である。入力繰り返し動作生成処理の詳細は後述する。次いで、制御部21は、入力繰り返し動作生成処理における入力繰り返し動作データの生成が成功したか否かを判定する(ステップS42)。このとき、制御部21は、入力繰り返し動作データの生成が失敗したと判定した場合には(ステップS42:NO)、ステップS50に進む。ステップS50において、制御部21は、指定動作データの生成が失敗したと判定して、指定動作生成処理を終了させる。一方、制御部21は、入力繰り返し動作データの生成が成功したと判定した場合には(ステップS42:YES)、ステップS43に進む。
ステップS43において、制御部21は、既定繰り返し動作取得処理を実行する。既定繰り返し動作取得処理は、生成された入力繰り返し動作データに類似する既定繰り返し動作データを取得するための処理である。既定繰り返し動作取得処理の詳細は後述する。次いで、制御部21は、既定繰り返し動作取得処理の結果、入力繰り返し動作データに類似する既定繰り返し動作データが存在するか否かを判定する(ステップS44)。このとき、制御部21は、類似する既定繰り返し動作データが存在すると判定した場合には(ステップS44:YES)、ステップS45に進む。ステップS45において、制御部21は、未修正繰り返し動作データに、取得された既定繰り返し動作データを設定して、ステップS47に進む。一方、制御部21は、類似する既定繰り返し動作データが存在しないと判定した場合には(ステップS44:NO)、ステップS46に進む。ステップS46において、制御部21は、未修正繰り返し動作データに、生成された入力繰り返し動作データを設定して、ステップS47に進む。
ステップS47において、制御部21は、再生中のカラオケ楽曲の楽曲データからテンポを取得する。次いで、制御部21は、取得したテンポの逆数の自然数倍の周期で繰り返し動作が行われるように、未修正繰り返し動作データを伸縮することにより、修正済繰り返し動作データを生成する。次いで、制御部21は、指定動作データに、生成された修正済繰り返し動作データを設定する(ステップS48)。次いで、制御部21は、指定動作データを、演奏番号Nに対応するパート種別に対応付けて記憶部22に記憶させて(ステップS49)、指定動作生成処理を終了させる。
図7(B)は、カラオケ装置2における入力繰り返し動作生成処理の一例を示すフローチャートである。図7(B)に示すように、制御部21は、入力動作の検出を開始する(ステップS51)。入力動作の検出において、制御部21は、距離画像カメラ3から距離画像を受信するごとに、歌唱者の各身体部位の座標を検出し、各身体部位の座標をRAMに記憶させる。
次いで、制御部21は、入力動作の検出が開始されてから最大取得時間が経過したか否かを判定する(ステップS52)。このとき、制御部21は、最大取得時間が経過したと判定した場合には(ステップS52:YES)、ステップS55に進む。一方、制御部21は、最大取得時間が経過していないと判定した場合には(ステップS52:NO)、ステップS53に進む。
ステップS53において、制御部21は、入力動作の検出が開始されてから最低取得時間が経過したか否かを判定する。このとき、制御部21は、最低取得時間が経過したと判定した場合には(ステップS53:YES)、ステップS54に進む。一方、制御部21は、最低取得時間が経過していないと判定した場合には(ステップS53:NO)、ステップS52に進む。
ステップS54において、制御部21は、直近の検出判定時間の間にRAMに記憶された相対運動量の合計を、直近の運動量として計算する。そして、制御部21は、計算した運動量が、検出判定運動量以下であるか否かを判定する。このとき、制御部21は、計算した運動量が検出判定運動量以下ではないと判定した場合には(ステップS54:NO)、ステップS52に進む。一方、制御部21は、計算した運動量が検出判定運動量以下であると判定した場合には(ステップS54:YES)、ステップS55に進む。
ステップS55において、制御部21は、入力動作の検出を終了させる。そして、制御部21は、入力動作の検出が開始されてからRAMに記憶された身体部位の座標を含む入力動作データを生成する。次いで、制御部21は、入力動作データから、動作が行われていない期間の身体部位の座標を除去する(ステップS56)。例えば、制御部21は、入力動作データの先頭から、相対運動量が連続して所定値以下である身体部位の座標を除去し、また入力動作データの末尾から、相対運動量が連続して所定値以下である身体部位の座標を除去してもよい。次いで、制御部21は、入力動作データから、繰り返し行われた動作部分の座標の抽出を行う(ステップS57)。繰り返し行われた動作部分の座標を抽出することができた場合、制御部21は、抽出された座標を含む入力繰り返し動作データを生成する。繰り返し行われた動作部分の座標を抽出することができなかった場合、制御部21は、入力繰り返し動作データの生成は失敗したと判定する。ステップS57を終えると、制御部21は、入力繰り返し動作生成処理を終了させる。
図7(C)は、カラオケ装置2における既定繰り返し動作取得処理の一例を示す図である。図7(C)に示すように、制御部21は、既定繰り返し動作のテンポを取得する(ステップS61)。次いで、制御部21は、入力繰り返し動作データの長さを、既定繰り返し動作のテンポに合わせて変更する(ステップS62)。例えば、制御部21は、入力繰り返し動作が行われる時間の長さが、既定繰り返し動作のテンポの逆数と一致するように、入力繰り返し動作データを調整する。次いで、制御部21は、長さが変更された入力繰り返し動作データに類似する既定繰り返し動作データを、記憶部22から検索して取得する(ステップS63)。そして、制御部21は、既定繰り返し動作取得処理を終了させる。
以上説明したように、本実施形態によれば、カラオケ装置2が、スピーカ4による楽曲の出力中に、歌唱者の動作を検出する。また、カラオケ装置2が、検出された動作に基づいて、繰り返し動作を示す動作データを決定する。また、カラオケ装置2が、スピーカ4による楽曲の出力中に、決定された動作データが示す繰り返し動作を行う観客キャラクターを示す映像をディスプレイ5に表示させる。従って、歌唱者が動作を行うことに応じて、繰り返し動作を行う観客キャラクターの映像が表示される。そのため、観客キャラクターを観客として歌唱者が見ることにより、あたかも観客の前で歌っているかのような臨場感を高めることができる。
1 選曲装置
2 カラオケ装置
3 距離画像カメラ
4 スピーカ
5 ディスプレイ
S カラオケシステム

Claims (12)

  1. 楽曲を示す楽曲データを取得する取得手段と、
    前記取得手段により取得された前記楽曲データが示す楽曲を出力手段により出力させる出力制御手段と、
    前記出力手段による前記楽曲の出力中に、ユーザの動作を検出する検出手段と、
    前記検出手段により前記ユーザの動作の検出が開始されてから前記検出手段により所定運動量以下のユーザの動作が検出されるまでの間に前記検出手段により検出された動作に基づいて、繰り返し動作を示す動作情報を決定する決定手段と、
    前記出力手段による前記楽曲の出力中に、前記決定手段により決定された前記動作情報が示す繰り返し動作を行うオブジェクトを示す映像を表示手段に表示させる表示制御手段と、
    を備えることを特徴とする情報処理装置。
  2. 請求項1に記載の情報処理装置において、
    前記検出手段により前記ユーザの動作の検出が開始されてから第1所定時間が経過した後に前記検出手段により前記所定運動量以下のユーザの動作が検出されるまでに検出された前記ユーザの動作に基づいて、前記動作情報を決定することを特徴とする情報処理装置。
  3. 請求項1又は2に記載の情報処理装置において、
    前記取得手段は、複数の演奏パートで構成される楽曲を示す前記楽曲データを取得し、
    前記決定手段により決定された前記動作情報を、前記複数の演奏パートのうちの何れかに割り当てる割当手段を更に備え、
    前記表示制御手段は、前記割当手段により前記動作情報が割り当てられた演奏パートが前記出力手段により出力されているとき、前記動作情報が示す繰り返し動作を行う前記オブジェクトを示す映像を前記表示手段に表示させることを特徴とする情報処理装置。
  4. 請求項3に記載の情報処理装置において、
    前記取得手段は、互いに種類が同じ2以上の演奏パートを含む複数の演奏パートで構成される楽曲を示す前記楽曲データを取得し、
    前記割当手段は、前記決定手段により決定された前記動作情報と、前記決定手段により前記動作情報が決定された前記ユーザの動作が前記検出手段により検出されたときに前記出力手段により出力されていた演奏パートの種類を示す種類情報とを対応付けて種類情報記憶手段に記憶させ、
    前記表示制御手段は、前記種類情報記憶手段に記憶された前記種類情報が示す種類の演奏パートが前記出力手段により出力されているとき、前記種類情報に対応付けて前記種類情報記憶手段に記憶された前記動作情報が示す繰り返し動作を行う前記オブジェクトを示す映像を前記表示手段に表示させることを特徴とする情報処理装置。
  5. 請求項1乃至4の何れか1項に記載の情報処理装置において、
    前記決定手段は、前記検出手段により前記ユーザの動作の検出が開始されてから第2所定時間が経過する前までに前記繰り返し動作が決定されなかった場合、前記ユーザの動作の検出が開始されてから前記第2所定時間が経過するまでに前記検出手段により検出された前記ユーザの動作に基づいて、前記動作情報を決定することを特徴とする情報処理装置。
  6. 予め定められた繰り返し動作を示す所定動作情報を複数記憶する所定動作情報記憶手段と、
    楽曲を示す楽曲データを取得する取得手段と、
    前記取得手段により取得された前記楽曲データが示す楽曲を出力手段により出力させる出力制御手段と、
    前記出力手段による前記楽曲の出力中に、ユーザの動作を検出する検出手段と、
    前記検出手段により検出された動作に基づいて、繰り返し動作を示す動作情報を決定する決定手段であって、前記所定動作情報記憶手段に記憶された前記複数の所定動作情報のうち、前記検出手段により検出された動作と類似する動作を示す所定動作情報を決定し、前記検出手段により検出された動作と類似する動作を示す所定動作情報が前記所定動作情報記憶手段に記憶されていない場合、前記検出手段により検出された動作を示す動作情報決定する決定手段と、
    前記出力手段による前記楽曲の出力中に、前記決定手段により決定された前記所定動作情報又は前記動作情報が示す繰り返し動作を行うオブジェクトを示す映像を表示手段に表示させる表示制御手段と、
    を備えることを特徴とする情報処理装置。
  7. 複数の演奏パートで構成される楽曲を示す曲データを取得する取得手段と、
    前記取得手段により取得された前記楽曲データが示す楽曲を出力手段により出力させる出力制御手段と、
    前記出力手段による前記楽曲の出力中に、ユーザの動作を検出する検出手段と、
    前記検出手段により検出された動作に基づいて、繰り返し動作を示す動作情報を決定する決定手段と、
    前記決定手段により決定された前記動作情報を、前記複数の演奏パートのうちの何れかに割り当てる割当手段と、
    前記割当手段により前記動作情報が割り当てられた演奏パートが前記出力手段により出力されているとき、前記決定手段により決定された前記動作情報が示す繰り返し動作を行うブジェクトを示す映像を示手段に表示させる表示制御手段と、
    を備えることを特徴とする情報処理装置。
  8. 楽曲を示す楽曲データを取得する取得手段と、
    前記取得手段により取得された前記楽曲データが示す楽曲を出力手段により出力させる出力制御手段と、
    前記出力手段による前記楽曲の出力中に、ユーザの動作を検出する検出手段と、
    前記検出手段により検出された動作に基づいて、繰り返し動作を示す動作情報を決定する決定手段と、
    前記出力手段による前記楽曲の出力中に、前記決定手段により決定された前記動作情報が示す繰り返し動作を行うオブジェクトを示す映像を表示手段に表示させる表示制御手段であって、前記検出手段により前記ユーザの動作の検出が開始されてから第2所定時間が経過する前までに前記繰り返し動作が決定されなかった場合、前記ユーザの動作の検出が開始されてから前記第2所定時間が経過するまでに前記検出手段により検出された前記ユーザの動作に基づいて、前記動作情報を決定する表示制御手段と、
    を備えることを特徴とする情報処理装置。
  9. 楽曲を示す楽曲データを取得する取得手段と、
    前記取得手段により取得された前記楽曲データが示す楽曲を出力手段により出力させる出力制御手段と、
    前記出力手段による前記楽曲の出力中に、ユーザの動作を検出する検出手段と、
    前記検出手段により検出された動作に基づいて、繰り返し動作を示す動作情報を決定する決定手段と、
    前記決定手段により決定された前記動作情報が示す繰り返し動作が行われる速さを、前記繰り返し動作の周期と、前記取得手段により取得された前記楽曲データが示す楽曲のテンポとに基づいて調整する調整手段と、
    前記出力手段による前記楽曲の出力中に、前記決定手段により決定された前記動作情報が示す繰り返し動作を前記調整手段により調整された速度で行うオブジェクトを示す映像を表示手段に表示させる表示制御手段と、
    を備えることを特徴とする情報処理装置。
  10. 請求項1乃至5、及び7乃至9の何れか1項に記載の情報処理装置において、
    予め定められた繰り返し動作を示す所定動作情報を複数記憶する所定動作情報記憶手段を更に備え、
    前記決定手段は、前記所定動作情報記憶手段に記憶された前記複数の所定動作情報のうち、前記検出手段により検出された動作と類似する動作を示す所定動作情報を決定し、前記検出手段により検出された動作と類似する動作を示す所定動作情報が前記所定動作情報記憶手段に記憶されていない場合、前記検出手段により検出された動作を示す動作情報を、前記オブジェクトが行う繰り返し動作を示す前記動作情報に決定し、
    前記表示制御手段は、前記決定手段により決定された前記所定動作情報又は前記動作情報が示す動作を行う前記オブジェクトを示す映像を前記表示手段に表示させることを特徴とする情報処理装置。
  11. 請求項1乃至の何れか1項に記載の情報処理装置において、
    前記決定手段により決定された前記動作情報が示す繰り返し動作が行われる速さを、前記繰り返し動作の周期と、前記取得手段により取得された前記楽曲データが示す楽曲のテンポとに基づいて調整する調整手段を更に備え、
    前記表示制御手段は、前記決定手段により決定された前記動作情報が示す繰り返し動作を前記調整手段により調整された速度で行う前記オブジェクトを示す映像を前記表示手段に表示させることを特徴とする情報処理装置。
  12. 楽曲を示す楽曲データを取得する取得ステップと、
    前記取得ステップにより取得された前記楽曲データが示す楽曲を出力手段により出力させる出力制御ステップと、
    前記出力手段による前記楽曲の出力中に、ユーザの動作を検出する検出ステップと、
    前記検出ステップにより前記ユーザの動作の検出が開始されてから前記検出ステップにより所定運動量以下のユーザの動作が検出されるまでの間に前記検出ステップにより検出された動作に基づいて、繰り返し動作を示す動作情報を決定する決定ステップと、
    前記出力手段による前記楽曲の出力中に、前記決定ステップにより決定された前記動作情報が示す繰り返し動作を行うオブジェクトを示す映像を表示手段に表示させる表示制御ステップと、
    をコンピュータに実行させることを特徴とするプログラム。
JP2015062743A 2015-03-25 2015-03-25 情報処理装置及びプログラム Active JP6287921B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015062743A JP6287921B2 (ja) 2015-03-25 2015-03-25 情報処理装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015062743A JP6287921B2 (ja) 2015-03-25 2015-03-25 情報処理装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2016183989A JP2016183989A (ja) 2016-10-20
JP6287921B2 true JP6287921B2 (ja) 2018-03-07

Family

ID=57243021

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015062743A Active JP6287921B2 (ja) 2015-03-25 2015-03-25 情報処理装置及びプログラム

Country Status (1)

Country Link
JP (1) JP6287921B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7249859B2 (ja) * 2019-04-25 2023-03-31 株式会社第一興商 カラオケシステム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3588883B2 (ja) * 1995-12-08 2004-11-17 ヤマハ株式会社 カラオケ装置
JP4278288B2 (ja) * 2000-07-31 2009-06-10 株式会社タイトー 踊り映像強調合成装置
JP2007072194A (ja) * 2005-09-07 2007-03-22 Xing Inc 人型映像制御装置
JP5495222B2 (ja) * 2008-04-23 2014-05-21 インターナショナル・ビジネス・マシーンズ・コーポレーション 操作対象物制御装置、システム、方法およびプログラム
JP5553446B2 (ja) * 2010-10-20 2014-07-16 株式会社メガチップス アミューズメントシステム
JP2014123085A (ja) * 2012-12-21 2014-07-03 Sachiko Miki カラオケにおいて歌唱に合わせて視聴者が行う身体動作等をより有効に演出し提供する装置、方法、およびプログラム
JP6110731B2 (ja) * 2013-05-31 2017-04-05 株式会社第一興商 ジェスチャーによるコマンド入力識別システム
JP6313003B2 (ja) * 2013-09-18 2018-04-18 日本コントロールシステム株式会社 カラオケ装置、画像出力方法、およびプログラム

Also Published As

Publication number Publication date
JP2016183989A (ja) 2016-10-20

Similar Documents

Publication Publication Date Title
CN100435728C (zh) 再现内容数据的方法和装置
JP6942300B2 (ja) コンピュータグラフィックスのプログラム、表示装置、送信装置、受信装置、動画生成装置、データ変換装置、データ生成装置、情報処理方法及び情報処理システム
JP6137935B2 (ja) 身体動作評価装置、カラオケシステム、及びプログラム
JP6699677B2 (ja) 情報処理方法、情報処理装置およびプログラム
JP2006201438A (ja) 再生装置および再生方法
JP6268287B2 (ja) 動画像生成装置、動画像生成方法、プログラム
JP7243026B2 (ja) 演奏解析方法、演奏解析装置およびプログラム
JP2013171070A (ja) 楽曲情報処理装置及び楽曲情報処理方法
WO2019156091A1 (ja) 情報処理方法
JP6287921B2 (ja) 情報処理装置及びプログラム
WO2020145209A1 (ja) 映像制御システム、及び映像制御方法
JP5928279B2 (ja) 運動支援装置及びプログラム
JP5935775B2 (ja) 情報処理装置及びプログラム
CN112402952A (zh) 一种基于音频和虚拟形象的互动方法及终端
JP5949688B2 (ja) 情報処理装置及びプログラム
JP5939217B2 (ja) 情報処理装置、情報処理システム及びプログラム
JP5949638B2 (ja) 情報処理装置及びプログラム
JP5954287B2 (ja) 情報処理装置及びプログラム
JP5954288B2 (ja) 情報処理装置及びプログラム
JP2012203071A (ja) カラオケ装置
JP5942914B2 (ja) 情報処理装置及びプログラム
JP5958389B2 (ja) 情報処理装置及びプログラム
WO2021085105A1 (ja) 情報処理装置、提案装置、情報処理方法および提案方法
JP5949687B2 (ja) 情報処理装置及びプログラム
JP6361430B2 (ja) 情報処理装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171012

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171017

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171214

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180122

R150 Certificate of patent or registration of utility model

Ref document number: 6287921

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150