【実施例】
【0050】
図1は、一実施例の機能ブロック図を示している。
【0051】
図1では、カラオケシステム150内に、身体動作評価装置100が含まれた実施例を示している。なお、身体動作評価装置100は、必ずしもカラオケシステム150内に存在する必要はない。したがって、身体動作評価装置100が、単体で用いられてもよい。
【0052】
また、本実施例は、サーバなどで構成される中央管理装置170を有する。カラオケシステム150は、中央管理装置170と、ネットワーク(不図示)を介して接続される。ネットワークとしては、例えばインターネットが用いられてもよい。
【0053】
身体動作評価装置100は、手本データ映像再生部102と、手本データ記憶部106と、効果表現部108と、身体動作取得部110と、一致度特定部112と、身体動作評価値算出部116と、シミュレート再生部118とを有する。
【0054】
まず、手本データ映像再生部102は、例えばカラオケの楽曲に合わせた振付の手本データに適合した手本映像を、表示装置(不図示)に表示する。カラオケの楽曲に合わせた振付には、例えば以下のものが挙げられる。本明細書では、「歌唱者」と「視聴者」とを包括して「ユーザ」という。
(1)ユーザ(主に歌唱者)の踊るダンスなどの身体動作(以下「振付」という)
(2)ユーザ(主に視聴者)のかけ声、コーラス、拍手など(以下「合いの手」という)。
【0055】
本明細書では、上記振付及び合いの手を定義するデータを「手本データ」と呼ぶ。
手本データ映像再生部102が再生する手本映像の詳細な例は、
図4及び
図5を用いて後述する。
【0056】
手本データ映像再生部102は、手本データ映像生成部104を含んでもよい。手本データ映像生成部104は、手本データ記憶部106に記憶された手本データ107を用いて、楽曲と同期させて、手本映像を表示させることができる。手本映像は、以下の2つの映像の両者または、いずれかであってもよい。
(a)ユーザが行う動作を楽曲再生に同期して滑らかに動く映像。
(b)ユーザが行う動作のうち特徴的な動作部分、又は真似るポイントとなる動作部分を表現した映像であって、楽曲再生に同期させて離散的に表示される映像。
【0057】
上記(a)の手本映像は、予め映像データとして生成し、楽曲と結合させておいてもよい。楽曲と手本映像とが合体した映像データのフォーマットの例としては、MPEG2、H.264/AVC、H.265/HEVCなどが挙げられるが、これらに限られない。
【0058】
手本データ107は、楽曲に合わせた身体の動作を定義したデータである。手本データは、後述する一致度特定部112において、ユーザの身体動作と比較されることにより、身体動作の評価値を算出するためにも用いられ得る。手本データの詳細な具体例については、
図7を用いて後述する。
【0059】
手本データ107は、映像データにおけるフレームのように、所定の時間間隔で作成されていなくてもよい。たとえば、振付における動作の転換点(以下「節目」という)におけるポーズなどを、楽曲再生位置と紐付けたデータであってもよい。また、拍手のタイミングを楽曲再生位置として定義したデータであってもよい。
【0060】
手本データ映像生成部104は、上記(a)の手本映像を再生するために、手本データ107を読み込んで、各節目の中間の楽曲再生位置での振付を補間して、滑らかな映像データを生成してもよい。生成された映像データは、楽曲の再生と同期して、再生される。
【0061】
上記(b)の手本映像の表示は、手本データ107に記憶されたデータを、補間をすることなく、楽曲と同期させて表示することによって実現できる。
【0062】
以上のように、ユーザは、滑らかな手本映像(a)または、離散的に表示される手本映像(b)のいずれか、又は両方を見て、身体動作を適切に行うことができる。このような形で、表示される手本映像は、カラオケシステムへの応用以外にも、体操教育などにも利用できる。
【0063】
身体動作取得部110は、カメラなどによって撮像されたユーザの映像から、ユーザの身体のモデルのデータを取得する。モデルのデータとしては、身体の骨と関節によって構成された骨格モデルが利用されてもよい。例えば、マイクロソフト社のKinect(登録商標)は、オブジェクトの画像と共に、オブジェクトの奥行き情報も取得することができる。例えば、このKinectを利用することにより、特殊なマーカ付きスーツを着用することなく、ユーザのモーションキャプチャを簡便に行うことができる。Kinectを利用することにより、ユーザの身体動作の骨格モデルの動きをリアルタイムで取得することができる。なお、本実施例は、Kinectを利用することを必須とするものではない。他のモーションキャプチャ技術が利用されてもよい。
【0064】
一致度特定部112は、たとえば、手本データに含まれる1つの手本ポーズと、その手本ポーズの楽曲再生位置を含む所定の時間間隔(比較のための楽曲再生間隔)内で取得された複数のユーザの身体動作のモーションキャプチャデータとを比較することができる。この比較動作の詳細については、
図8及び
図9を用いて後述する。
【0065】
したがって、1つの手本データに対して、比較のための所定の楽曲再生間隔内に含まれる複数のモーションキャプチャデータとが比較される。この比較のための所定の楽曲再生間隔は、予めデフォルトで設定されていてもよく、或いはユーザにより指定されてもよい。そして、例えば、この複数の比較結果のうち、一番一致度の高い比較結果を、一致度として採用してもよい。このように、比較のための所定の楽曲再生間隔内で取得されたユーザの複数のモーションキャプチャデータを用いることにより、ユーザの身体動作が、正しい楽曲再生位置からのズレを吸収することに利用することができる。すなわち、比較のための所定の楽曲再生間隔を調節することによって、ユーザの動作が、その比較のための所定の楽曲再生間閣内で、手本データと高い一致度を示していれば、手本映像と、ユーザの身体動作が一致していると判断することができる。このため、比較のための所定の楽曲再生間隔は、その後に計算される身体動作評価値における動作タイミングのズレの評価の厳しさを調節することができる。
【0066】
たとえば、ダンスが得意でないユーザに対しては、比較のための所定の楽曲再生間隔を長くすることによって、手本映像と、ユーザの身体動作にズレが大きい場合であっても、両者が一致していると判断される確率が高くなる。すなわち、比較のための所定の楽曲再生間隔を調節することで、ユーザ毎に、評価に対してハンディキャップの調節を行うことができる。
【0067】
身体動作評価値算出部116は、一致度特定部112からの、手本データの1つの節目における複数の比較結果のうち、たとえば、一番一度の高い比較結果を選択する。この選択された一致度が、その節目における手本データと、身体動作との一致度として採用される。或いは、1つの節目における複数の比較結果の平均値を算出して、節目における手本データと、身体動作との一致度としてもよい。
【0068】
そして、身体動作評価値算出部116は、例えば、各節目において選択された一致度の加重平均値を算出する。この重み付けの算出の詳細については、
図7を用いて後述する。重み付けをして、一致度の平均値を計算することによって、動作の節目ごとに、その動作の重要度を定義することができる。たとえば、身体動作(ダンス)において、決めのポーズの節目においては、重みを大きくすることによって、その決めのポーズの評価に与える影響度を高めることができる。
【0069】
なお、評価値としては、身体動作(ポーズ)の評価値、合いの手の評価値などが含まれる。合いの手の評価においては、合いの手の身体動作の評価値、拍手などのタイミングに関する評価値が含まれる。拍手などのタイミングに関する評価値については、単純に、手本データの各節目の楽曲再生位置と、拍手の楽曲再生位置との差異を(重み付け)平均することで、合いの手の評価値を算出することができる。
【0070】
また、ユーザが所持している携帯端末370のボタン、加速度センサ等により、合いの手のタイミングを身体動作評価装置100に伝えてもよい。そして、一致度特定部は、手本データの各節目の楽曲再生位置と、伝送された合いの手のタイミングにおける楽曲再生位置との差異を(重み付け)平均することで、合いの手の評価値を算出してもよい。なお、携帯端末370と、身体動作評価装置100との接続は、Bluetooth(登録商標)、WIFIなどの無線ネットワークを用いることができる。或いは、カラオケの楽曲の入力装置を用いて、合いの手のタイミングを身体動作評価装置100に伝えてもよい。
【0071】
身体動作評価値算出部116は、算出された評価値を中央管理装置170にネットワークを介して送ることができる。
【0072】
効果表現部108は、身体動作取得部110から、身体動作の情報を受け取る。受け取った身体動作に応じて、予め定めた映像表現、音などを再生することができる。例えば、ユーザの合いの手の身体動作が、拍手の動作であれば、効果表現部108は、両手が触れたタイミングにおいて、拍手の音又は、その他の音をスピーカ(不図示)から発生させるようにしてもよい。
【0073】
また、効果表現部108は、身体動作が特定の姿勢になった場合に、所定の効果映像を再生したり、画面の背景映像を変更するなどの映像効果を、表示装置に表示したりするようにしてもよい。
【0074】
シミュレート再生部118は、例えば、一致度特定部で特定された一致度に対応する身体動作のモーションキャプチャデータと、その楽曲再生位置とを利用して、ユーザの動作をキャラクタがシミュレートする映像を生成することができる。このため、一致度特定部112は、各節目でのユーザの身体動作のモーションキャプチャデータと、その時の楽曲再生位置とをユーザの身体動作データとして、記憶装置に保存しておくことが望ましい。また、保存されたユーザの身体動作データは、中央管理装置170を経由して、他のカラオケシステム150に転送してもよい。他のカラオケシステム150に、身体動作データを転送することによって、他人の身体動作を、楽曲再生位置と共にカラオケシステム150で再生することが可能となる。
【0075】
中央管理装置170は、サーバなどのコンピュータで実現され得る。中央管理装置170は、収集部172と、順位付与部174と、情報提供部176とを有する。
【0076】
中央管理装置170は、複数のカラオケシステム150と、ネットワークを介して接続される。
【0077】
収集部172は、身体動作の評価値、合いの手の評価値、などを収集する。また、収集部172は、歌唱に関する評価値を、カラオケシステム150から収集してもよい。なお、歌唱に関する評価値は、歌唱における、音程の一致度、リズムに対する一致度、歌唱の強弱による歌唱表現とテンプレートとの一致度などを総合して、算出される。歌唱に関する評価技術は、当業者に周知であるため、本明細書は、説明を省略する。また、袖手部は、ユーザの身体動作データを収集してもよい。
【0078】
順位付与部174は、収集部172から、身体動作の評価値、合いの手の評価値、歌唱の評価値などを受け取る。順位付与部174は、たとえば、これらの評価値に所定の重み付けをして平均値を算出し、総合評価を算出する。所定の重みは、デフォルト値が定められていてもよい。或いは、ユーザの設定によって、重みが決定されてもよい。
【0079】
そして、順位付与部174は、総合評価値に基づいて、ユーザに対して、或いは、ユーザのグループに対して、順位付けを行い、情報的要部に提供する。また、順位付与部174は、身体動作の評価値、合いの手の評価値、歌唱の評価値のそれぞれに対して、順位付を行ってもよい。
【0080】
情報提供部176は、順位付与部174から得られた順位を、複数のカラオケシステム150のうち、適切なカラオケシステム150に、送信する。また、情報提供部176は、収集部172が、収集したユーザの身体動作データを、必要とするカラオケシステム150に送信してもよい。
【0081】
以上のようにして、
図1に示す実施例では、身体動作の評価値、合いの手の評価値を適切に算出すると共に、これらの評価値を利用して、より娯楽性の高いカラオケシステムを提供することができる。
【0082】
図2は、一実施例の動作のフローチャートを示している。
図2(A)は、一実施例の動作のノ概要を示している。
【0083】
ステップS202で、手本データ映像生成部104は、ユーザのための手本映像を再生する。ユーザは、この手本映像を見ることによって、適切なタイミングで適切な動作を行うことができる。なお、上述のように、手本映像は、(a)ユーザが行う動作を楽曲再生に同期させて滑らかに動く映像、及び、(b)ユーザが行う動作のうち特徴的な動作部分、又は真似るポイントとなる動作部分を表現した映像であって、楽曲再生に同期させて離散的に表示される映像のいずれか、又は両方である。
【0084】
ステップS204で、身体動作取得部110は、ユーザの身体動作を取得する。取得された身体動作は、例えば骨と関節とで構成される骨格モデルのモーションキャプチャデータとして取得され得る。モーションキャプチャデータを取得するシステムとしては、例えば、上述ように、Kinect(登録商標)を使用したシステムが挙げられる。なお、本実施例における身体動作の取得は、これに限定されるものではない。
【0085】
ステップS206で、一致度特定部112は、手本データと、取得された身体動作とを比較する。この比較の際には、手本データに含まれる1つのデータの楽曲再生位置(節目)の前後の比較のための楽曲再生間隔内で取得された複数の身体動作のデータを用いることができる。このようにして、比較する範囲を拡げることにより、身体動作のタイミングのズレを考慮した比較が可能である。手本データに含まれる1つのデータと、比較のための楽曲再生間隔内で取得された複数の身体動作のデータとを比較し、最も一致度の高いものを一致度として選択する。そして、この選択された一致度に対応する身体動作と、その身体動作の音楽再生位置が記憶される。記憶された身体動作とその音楽再生位置に関する身体動作データは、後にユーザの身体動作をキャラクタにシミュレートさせる場合に利用することができる。記憶された身体動作とその音楽再生位置に関する身体動作データは、離散的なデータであるため、ビデオデータなどと比して、データ量が小さくなる。このため、この身体動作データは、ネットワークを介して他のカラオケシステムに点素する際にも、転送コストを削減することができる。また、記憶のためのコストも削減することができる。
【0086】
ステップS208で、身体動作評価値算出部116は、身体動作の評価値、及び/又は合いの手の評価値を算出する。評価値の算出においては、各節目における所定の重みを用いて、重み付き平均値を算出することで、より適切な評価値が算出できる。例えば、決めのポーズに対応する節目の重みを大きくすることによって、決めのポーズを重要視した評価値を算出することができる。
【0087】
なお、身体動作評価値算出部116は、評価値を、楽曲の途中においても随時算出することができ、また、表示することができる。
【0088】
ステップS210で、例えば、中央管理装置170の収集部172において、各種の評価値が収集される。中央管理装置170の順位付与部174は、収集した各種の評価値を用いて、ユーザの順位付け、または、ユーザグループの順位付を行う。
【0089】
ステップS212で、カラオケシステム150は、中央管理装置170から取得した順位、及び各種の評価値を、表示する。
【0090】
以上の動作によって、例えば歌唱者であるユーザは、楽曲合わせて、ダンスの動作を楽しむことができる。また、視聴者であるユーザは、合いの手を楽しむことができる。また、評価値及び/又は順位の情報を得ることができ、歌唱者と視聴者の両者が一体となって、カラオケを楽しむことができる。
【0091】
図2(B)は、一致度選択部114が行う動作を示すフローチャートである。
【0092】
ステップS252で、一致度選択部114は、一致度α、及び楽曲再生位置βの初期化を行う。例えば、α及びβには、0を代入して初期化してもよい。
【0093】
ステップS254は、ステップS260との間で、ループ処理を形成する。なお、ユーザの動作のうち、ユーザポーズを取り上げて以下説明する。ループは、1つの節目の前後におけるΔtの比較のための音楽再生間隔において取得されたN個のユーザポーズの各々に対して、ループ処理が行われる。
【0094】
SテップS256で、一致度選択部114は、αよりも、手本ポーズとの一致度が高いユーザポーズがあるか否かが判断される。「はい」であれば、ステップS258に進む。「いいえ」であれば、ステップS260に進む。
【0095】
ステップS258で、一致度選択部114は、ユーザポーズ一致度をαに代入する。βには、そのユーザポーズの楽曲再生位置が代入される。
【0096】
以上の動作を繰り返すことにより、手本ポーズとユーダーポーズとが最も一致度の高いユーザポーズの一致度がαの値として取得できる。また、最も一致度の高いユーザポーズの楽曲再生位置が、βの値から取得することができる。
【0097】
図3は、カラオケシステムの利用形態の例を示している。なお、異なる図において、同じ参照番号が付されている要素は、同じ要素を示す。
【0098】
カラオケシステム150は、カメラ302と、表示装置310と、身体動作評価装置100とを含んでいる。カメラ302は、身体動作評価装置100に接続されている。
【0099】
また、マイク322及びマイク324が、身体動作評価装置100に接続されている。
【0100】
表示装置310には、手本映像312と、合いの手映像314が表示されている。
【0101】
歌唱者352と、視聴者354が、それぞれ、マイク322及びマイク324の前に存在している。カメラ302は、歌唱者352、及び視聴者354の動作を撮像している。
【0102】
携帯端末370が、無線通信によって身体動作評価装置100と通信できる状態になっている。
【0103】
身体動作評価装置100は、ネットワーク360を介して中央管理装置170に接続されている。
【0104】
図3において、歌唱者352は、手本映像312を見ることによって、手本映像312の動作を真似ることができる。視聴者354は、合いの手映像314の動作を真似ることによって、合いの手の動作を真似ることができる。
【0105】
歌唱者352の動作は、カメラ302によって撮像されているため、身体動作評価装置100は、歌唱者352の動作が、手本映像312と、どの程度一致しているかの評価値を算出することができる。
【0106】
視聴者354の動作は、カメラ302によって撮像されているため、身体動作評価装置100は、視聴者354の動作が、合いの手映像314と、どの程度一致しているかの評価値を算出することができる。
【0107】
また、視聴者354の合いの手の動作に応じて、効果表現部108は、効果音をスピーカ(不図示)から出力することができる。
【0108】
また、他の視聴者(不図示)が、合いの手映像314を真似て、携帯端末370を振ることによって、携帯端末370に内蔵された加速度センサからの情報が、無線通信を介して身体動作評価装置100に転送される。身体動作評価装置100は、この加速度センサからの信号を合いの手の動作として認識する。そして、携帯端末370からの信号に基づいて、合いの手の評価が行われる。このように、複数の視聴者が合いの手の動作を行っている場合には、合いの手に関し2つの評価値が算出され得る。これらの2つの合いの手の評価値は、例えば、平均値として算出され、1つの合いの手の評価値に集約されてもよい。
【0109】
以上のようにして、身体動作評価装置100によって、身体動作の評価値と、合いの手の評価値が取得され、中央管理装置170に送信される。
【0110】
中央管理装置170は、少なくとも、受信した身体動作の評価値と、合いの手の評価値に基づいて、総合評価を行う。なお、この総合評価の算出の際に、歌唱評価値がさらに用いられてもよい。中央管理装置170は、複数のカラオケシステム150から取得した情報を基に、歌唱者352の順位を算出する。また、歌唱者352及び視聴者354を含む、ユーザグループの順位を算出してもよい。中央管理装置170は、これらの順位及び総合評価値をカラオケシステム150に送信する。
【0111】
カラオケシステム150は、受信した順位及び総合評価値を、表示装置310に表示する(不図示)。
【0112】
以上のようにして、歌唱評価値だけでなく、歌唱者の身体動作の評価値、及び/又は合いの手の評価値をも考慮した、総合評価を行うことができるカラオケシステムが実現される。
【0113】
図4は、表示装置310に表示されるユーザインタフェース400の例を示している。
【0114】
表示410は、離散的な手本映像である。例えば、キャラクタ412aは、キャラクタ416aよりも濃く表示されている。濃く表示されているキャラクタは、過去の手本ポーズを示している。薄く表示されているキャラクタは、将来の手本ポーズを示している。キャラクタ414aは、濃い部分と薄い部分が存在する。すなわち、キャラクタ414aは、現在の手本ポーズを示している。このように、キャラクタの濃さが、時間の経過と共に変化してゆく。この変化を追うことによって、ユーザは、現在のポーズと未来のポーズを容易に強いることができる。このような表示によって、ユーザは、手本動作を容易に真似ることができる。
【0115】
キャラクタ450aは、滑らかな動作を行う手本映像である。この手本映像450は、予め生成されたものであってもよい。或いは、上述のように、手本データを補間して、リアルタイムに三次元キャラクタを動作させて表示させてもよい。ユーザは、滑らかな手本映像を真似ることで、自己の身体動作を行うこともできる。
【0116】
表示420は、合いの手の滑らかな手本映像である。キャラクタ440aは、手を合わせていることを示している。視聴者は、この合いの手の滑らかな手本映像を真似ることによって、合いの手の身体動作を行うことができる。
【0117】
図5は、
図4よりも後の時刻において表示されるユーザインタフェースの例を示している。
【0118】
表示410には、キャラクタ412b、414b、が濃く表示されている。キャラクタ416bは、一部分が濃く表示されている。したがって、現在の手本ポーズは、キャラクタ416bであることが分かる。
【0119】
キャラクタ540bは、キャラクタ顔
図416bのポーズをとっている。
【0120】
表示420は、合いの手の滑らかな手本映像である。キャラクタ440bは、両手を離している瞬間を示している。視聴者は、この合いの手の滑らかな手本映像を真似ることによって、合いの手の身体動作を行うことができる。
【0121】
図6は、離散的な手本映像の複数の表示方式を示している。
【0122】
図6(A1)では、キャラクタ610−A1が濃く表示されている。したがって、キャラクタ610−A1は、既に終了したポーズを示している。キャラクタ612−A1は、薄く表示されており、キャラクタ610−A1からかなり離れた位置に存在しているため、将来のポーズであることが分かる。
【0123】
また、620−A1に示されるように、歌詞のうち、歌い終えた部分が濃く表示されている。この表示から、現在歌うべき歌詞の部分が分かる
図6(A2)は、
図6(A1)と、キャラクタの位置は変化しておらず、キャラクタの濃さが変化している。すなわち、
図6(A2)と
図6(A1)とで示される映像は、キャラクタの濃さの変化を用いて、過去、現在、未来のポーズを識別することができる表示方式である。キャラクタ610−A1は、同様に濃く表示されている。そして、キャラクタ612−A2も濃く表示されており、このポーズは現在時刻の直前に終了したことが分かる。
【0124】
また、歌詞620−A2に示されるように、歌詞のうち、歌い終えた部分が濃く表示さレテいる。この表示から、現在歌うべき歌詞の部分が分かる。
【0125】
図6(B1)及び
図6(B2)は、キャラクタの濃さではなく、キャラクタの列が、左方向に移動することにより、現在のキャラクタのポーズを知ることができる表示方式を示している。最も左に位置するキャラクタが、直前に終了したポーズを示している。キャラクタ610−B1は、直前に終了したポーズを示す。キャラクタ612−B1は、キャラクタ610−B1からかなり離れた位置に存在しているため、将来のポーズであることが分かる。
【0126】
図6(B2)は、
図6(B1)と比して、キャラクタの位置が、時間の経過に依存して右に移動している。キャラクタ612−B2が、直前に終了したポーズを示している。
【0127】
図6(B2)と
図6(B1)とで示される映像は、キャラクタ左方向への移動を用いて、過去、現在、未来のポーズを識別することができる表示方式である。
【0128】
歌詞620−B1及び歌詞620−B2は、歌詞620−A1及び歌詞620−A2の表示方式と同じである。
【0129】
以上のようにして、ポーズの変化を分かりやすく表示できる。
【0130】
図7は、1つの手本データに含まれる複数のポーズに関するデータの例を示している。
【0131】
楽曲再生位置軸710は、音楽再生における位置の軸を示すものであり、時間軸に対応するものである。楽曲の場合には、楽曲のテンポを変更して再生する場合がある。このため、時間軸の代わりに、テンポを替えても不変である楽曲再生位置を基準とした軸を用いることが有利である。
【0132】
数値702は、例えば、楽曲の先頭からのビートカウントを示している。
【0133】
手本ポーズ720は、手本データに含まれる複数の手本ポーズの1つを示している。手本ポーズは、例えば、骨と、骨を結合する関節の組合せによって作られる骨格モデルを採用することができる。
【0134】
楽曲再生位置722は、手本ポーズ720に対応する楽曲再生位置を示している。本明細書では、節目の位置と同義である。
【0135】
重み724は、手本ポーズ720に対応する重みを示している。重み724は、複数の手本ポーズ(720、730、740、749)に対応する一致度の重み平均を計算する際の重みとして利用される。
【0136】
以上のようにして、手本データが構成される。また、手本データは、どの楽曲に対応する手本データであるかの情報を持つ。また、
図7の例では、ポーズに関するデータを簡略化して説明した。ポーズは、主に歌唱者が利用するダンスのポーズと、視聴者が利用する合いの手のポーズが存在する。ダンスのポーズと、合いの手のポーズの楽曲再生位置は、必ずしも同じである必要はない。また、手拍子のタイミングに関するデータが手本データに含まれてもよい。したがって、手本データには、様々なデータを含ませることができる。
【0137】
図8は、手本データと対応させた、身体動作のデータ750を示している。
【0138】
身体動作取得部110で取得される身体動作のデータ750は、所定のインターバルで、取得される。取得された動作は、例えば骨格モデルの形で認識される。そして、それぞれの手本ポーズ(720、730、740、749)に対応させて、節目の位置の前後の比較のための楽曲再生位置間隔Δtの間に取得された複数の身体動作のデータが比較候補として選択される。
【0139】
例えば、手本ポーズ730に対しては、比較のための楽曲再生位置間隔Δtの間に取得された、身体動作のデータ(751、752、753、754、755)が選択される。
【0140】
図9は、一致度特定部112の動作の例を示している。
【0141】
図9は、
図8に示した手本ポーズ730と、Δtの比較のための楽曲再生地間隔に取得された身体動作のデータ(751、752、753、754、755)が示されている。
【0142】
一致度特定部112は、まず、手本ポーズ720と、身体動作のデータ751との一致度を計算する。一致度の計算は、当業者に周知のパターン認識の技術を用いることができる。本明細書の実施例の場合には、骨格モデル同士の一致度の計算を行う。具体的には、対応する関節同士の距離、関節における骨の角野の差異を、それぞれ計算し、例えば差異の絶対値を合計することによって一致度を計算することができる。この絶対値の逆数を一致度と定義すれば、一致度の値が大きいほど、一致の度合いが高いことになる。
【0143】
一致度特定部112は、身体動作のデータ752、753、754、755についても、同様に、手本ポーズ730との間の一致度を算出する。
【0144】
そして、一致度選択部114は、身体動作のデータ(751、752、753、754、755)にそれぞれ対応する一致度のうち、最も高い一致度を示す身体動作のデータを選択する。最も高い一度を、選択された一致度として採用する。また、選択された身体動作のデータ、及び、選択された身体動作のデータの音楽再生位置を保存しておく。
【0145】
以上のようにして、複数の手本ポーズの各々に対応して、一致度が選択される。上述のように各手本ポーズには、重みが定められている。この重みを用いて、複数の手本ポーズに対応する複数の一致度の重み付き平均値を求める。重み付き平均値は、音楽が始まってから、現在時刻までの途中段階でも計算できる。したがって、現在時刻における重み月平均値を現在時点の評価値として、表示装置に表示させてもよい。楽曲が終了した時点で、最終的な評価値を計算する。評価値には、身体動作の評価値、合いの手の評価値が含まれ得る。
【0146】
以上のようにして、身体動作評価値算出部116は、身体動作の評価値、合いの手の評価値を算出することができる。
【0147】
図10は、順位付与部174の入出力を示している。
【0148】
順位付与部174には、身体動作の評価値1002、合いの手の評価値1004、歌唱評価値1006が入力される。順位付与部174は、たとえば、入力された複数の評価値を単純平均してもよい。或いは、所定の重みを付けて平均値を計算してもよい。或いは、特定の入力値を無視して、評価値を所定の算出アルゴリズムで計算してもよい。算出された評価値は、総合評価値1010として出力される。また、楽曲毎に集計して、順位1012が算出され出力される。
【0149】
なお、カラオケシステム150から、絞り込み指示1008が入力されてもよい。たとえば、東京都などの都道府県を特定して、順位を得たい場合は、カラオケシステム150から、その旨の絞り込み指示1008が送信される。順位付与部174は、絞り込み指示に基づいて、順位を算出して、出力する。
【0150】
図11は、実施例のハードウエア構成の例を示している。
【0151】
ハードウエアは、CPU1102と、ROM1104と、RAM1105と、ドライブ装置1110と、入出力インターフェース1120と、ディスプレイユニット1130と、音響制御ユニット1140と、通信ユニット1150とを含む。そして、それぞれの構成要素は、バス1170で接続されている。
【0152】
入出力インターフェース1120には、例えば、キーボードなどの入力装置1121、マイク1122、カメラ1123、距離センサ1124が接続され得る。
【0153】
ディスプレイユニット1130には、ディスプレイが接続され得る。音響制御ユニット1140には、スピーカが接続され得る。通信ユニット1150には、携帯端末370、パッド(タブレット端末)、有線・無線LANが接続され得る。
【0154】
また、ドライブ装置1110には、可搬記憶媒体1112が挿入され得る。
【0155】
なお、本実施例の全部又は一部はプログラムによってインプリメントされ得る。このプログラムは、可搬記憶媒体961に格納することができる。例示として、可搬記憶媒体961としては、磁気記録媒体、光ディスク、光磁気記録媒体、不揮発性メモリなどがある。磁気記録媒体には、HDD、フレキシブルディスク(FD)、磁気テープ(MT)などがある。光ディスクには、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc−Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。また、光磁気記録媒体には、MO(Magneto−Optical disk)などがある。不揮発性メモリには、USBメモリ、SDメモリなどがある。可搬記憶媒体961に格納されたプログラムが読み込まれ、CPUによって実行されることにより、本発明の実施例の全部又は一部が実施され得る。
【0156】
また、本実施例が提供される電子機器は単一の機器で構成される必要は無く、有線または無線により他の電子機器と情報をやりとりできる機能を備えた複数の電子機器の集合であってもよい。
【0157】
また、本実施例は画像・映像・文字及び音声のデータを記録し再生する機能を持つ電子機器に提供される。
【0158】
本実施例による振付や合いの手への評価機能は、従来から存在する歌唱者の歌唱に対する評価機能と一緒にカラオケシステムに搭載し、同時に使用することができる。