(57)【要約】【課題】  歌詞をどの程度正確に歌唱しているかを評価する。【解決手段】  歌唱音声取得部１１０は、歌唱音声を取得する。正解歌詞特定部１２０は、表示部３に表示された歌詞の文字のワイプタイミングを指示するワイプ時間情報に基づいて、歌唱音声取得部１１０により取得される歌唱音声に含まれる音素波形に対応した歌詞の音素記号を特定する。音素アライメント部１３０は、歌唱音声取得部１１０により取得される歌唱音声を音素波形区間に分割する。音素コンフィデンス評価部１４０は、歌詞の音素記号について定義された音素波形が歌唱音声の音素波形区間の音素波形らしい程度を示す音素コンフィデンススコアを算出する。継続長評価部１５０は、歌詞の文字の歌唱の継続長を求め、この継続長の尤度に基づき継続長スコアを算出する。総合評価部１６０は、音素コンフィデンススコアおよび継続長スコアに基づき最終スコアを算出する。【選択図】図１
2015079160.tif 000002
【特許請求の範囲】
【請求項１】
歌唱音声を取得する歌唱音声取得手段と、
表示手段に表示された歌詞の文字のワイプタイミングを指示するワイプ時間情報に基づいて、前記歌唱音声取得手段により取得される歌唱音声に含まれる音素波形に対応する前記歌詞の音素記号を特定する正解歌詞特定手段と、
前記歌詞の音素記号について定義された音素波形が前記歌唱音声に含まれる音素波形らしい程度を示す音素コンフィデンスを算出する音素コンフィデンス評価部を含み、前記音素コンフィデンスに基づいて前記歌詞の歌唱の正確さを評価する評価手段と
を具備することを特徴とする歌唱評価装置。
【請求項２】
前記歌唱音声取得手段は、前記歌唱音声を無音区間により区切ることにより歌唱音声フレーズに分割する手段を含み、
前記正解歌詞特定手段は、前記歌詞の文字のうち前記歌唱音声フレーズの開始時刻および終了時刻の付近においてワイプされる文字に基づいて、前記歌唱音声フレーズに含まれる音素波形に対応した前記歌詞の文字列を特定することを特徴とする請求項１に記載の歌唱評価装置。
【請求項３】
前記歌唱音声取得手段は、前記歌唱音声を無音区間により区切ることにより歌唱音声フレーズに分割する手段を含み、
前記正解歌詞特定手段は、前記歌詞を構成する文字のうち前記歌唱音声フレーズの開始時刻および終了時刻の付近においてワイプされる文字に基づいて、前記歌唱音声フレーズに含まれる音素波形に対応した前記歌詞の文字列を１または複数種類特定し、
前記評価手段は、前記正解歌詞特定手段が特定した全ての種類の歌詞の文字列について、前記歌詞の歌唱の正確さの評価を行い、最も高い評点の得られた文字列についての評点を採用することを特徴とする請求項１に記載の歌唱評価装置。
【請求項４】
前記評価手段は、
前記歌唱音声における歌詞の各文字の歌唱の継続長と各文字のコンテキストを求め、各種のコンテキストを有する文字の歌唱の継続長の確率密度分布をコンテキスト別にモデル化した各種の継続長モデルのうち前記各文字のコンテキストに対応した継続長モデルに基づいて、前記各文字の歌唱の継続長の尤度を求める継続長評価部を有し、
前記歌唱音声の各音素が前記歌詞の各音素であると認められる程度と、前記歌詞の各文字の歌唱の継続長の尤度とに基づいて、前記歌詞の歌唱の正確さを評価することを特徴とする請求項１〜３のいずれか１の請求項に記載の歌唱評価装置。
【請求項５】
コンピュータを、
歌唱音声を取得する歌唱音声取得手段と、
表示手段に表示された歌詞の文字のワイプタイミングを指示するワイプ時間情報に基づいて、前記歌唱音声取得手段により取得される歌唱音声に含まれる音素波形に対応する前記歌詞の音素記号を特定する正解歌詞特定手段と、
前記歌詞の音素記号について定義された音素波形が前記歌唱音声に含まれる音素波形らしい程度を示す音素コンフィデンスを算出する音素コンフィデンス評価部を含み、前記音素コンフィデンスに基づいて前記歌詞の歌唱の正確さを評価する評価手段と
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、カラオケの歌唱を評価する装置およびプログラムに関する。
【背景技術】
【０００２】
この種のカラオケの歌唱評価の技術として例えば特許文献１に開示されたものがある。この特許文献１に開示の技術では、カラオケ装置のマイクロホンで採取した歌唱音声を音声認識手段により認識し文字化する。同時に周波数分析手段により発音の音高を測定する。そして、認識文字と対応する発音音高を、カラオケデータのもつ楽譜データから取得した歌唱すべき歌詞文字・正解音高と比較する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−４１０６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来より正しい音高で歌詞を発音することができているか否かを評価する技術（例えば特許文献１）はあったが、音高は無視して、歌詞をどの程度正確に歌唱しているかという観点で歌唱の評価をする技術的手段は提供されていなかった。
【０００５】
本発明は、このような課題に鑑みてなされたものであり、歌詞をどの程度正確に歌唱しているかを評価することができる技術的手段を提供することを目的とする。
【課題を解決するための手段】
【０００６】
この発明は、歌唱音声を取得する歌唱音声取得手段と、表示手段に表示された歌詞の文字のワイプタイミングを指示するワイプ時間情報に基づいて、前記歌唱音声取得手段により取得される歌唱音声に含まれる音素波形に対応する前記歌詞の音素記号を特定する正解歌詞特定手段と、前記歌詞の音素記号について定義された音素波形が前記歌唱音声に含まれる音素波形らしい程度を示す音素コンフィデンスを算出する音素コンフィデンス評価部を含み、前記音素コンフィデンスに基づいて前記歌詞の歌唱の正確さを評価する評価手段とを具備することを特徴とする歌唱評価装置を提供する。
【０００７】
この発明によれば、ワイプ時間情報に基づいて、歌唱音声に含まれる音素波形が歌詞に含まれる音素記号に対応付けられ、歌詞の音素記号について定義された音素波形が歌唱音声に含まれる音素波形らしい程度を示す音素コンフィデンスが算出され、この音素コンフィデンスに基づいて、歌詞をどの程度正確に歌唱しているかの評価がなされる。
【図面の簡単な説明】
【０００８】
【図１】この発明の一実施形態である歌唱評価装置を含むカラオケ装置の構成を示すブロック図である。
【図２】同実施形態における歌唱評価プログラムの機能の概略を示す図である。
【図３】同実施形態におけるモデル学習部に与えられる学習データの内容を例示するタイムチャートである。
【図４】同実施形態においてモデル学習部が学習データに基づいて生成するコンテキストを説明するタイムチャートである。
【図５】同実施形態においてモデル学習部が行うコンテキストに基づく文字の歌唱の継続長のクラスタリングを説明する図である。
【図６】同実施形態における歌唱音声取得部の動作を示すタイムチャートである。
【図７】同実施形態における正解歌詞特定部の処理内容を例示するタイムチャートである。
【図８】同実施形態における正解歌詞特定部の処理内容を例示するタイムチャートである。
【図９】同正解歌詞特定部の処理内容の他の例を示すタイムチャートである。
【図１０】同実施形態における音素コンフィデンス評価部の処理内容を例示するタイムチャートである。
【図１１】同実施形態における音素コンフィデンススコアの算出方法を示す図である。
【図１２】同実施形態における正解歌詞特定部、音素アライメント部および継続長評価部の処理内容を例示するタイムチャートである。
【図１３】同実施形態における歌唱の評価の第１の例を示すタイムチャートである。
【図１４】同実施形態における歌唱の評価の第２の例を示すタイムチャートである。
【図１５】同実施形態における歌唱の評価の第３の例を示すタイムチャートである。
【発明を実施するための形態】
【０００９】
以下、図面を参照し、この発明の実施の形態を説明する。
図１はこの発明の一実施形態である歌唱評価装置を含むカラオケ装置の構成を示すブロック図である。図１において、ＣＰＵ１は、カラオケ装置全体の制御を行うプロセッサである。ＣＰＵ１には、カラオケ伴奏音を放音するためのサウンドシステム２、歌詞を画像とともに表示するための表示部３、歌唱音声を収音するマイク等からなる音声入力部４、サウンドシステム２の音量、音声入力部４の音量等の各種のパラメータの設定のために用いられる操作部５が接続されている。
【００１０】
また、ＣＰＵ１には、図示しないサーバからＬＡＮを介してカラオケの曲データを受信するための通信部６、図示しないリモコン（図示略）との間で情報の授受を行うリモコン通信部７、各種の制御プログラムを記憶したＲＯＭ８、ＣＰＵ１によってワークエリアとして使用されるＲＡＭ９が接続されている。
【００１１】
さらにＣＰＵ１には不揮発性記憶装置であるＨＤＤ（ハードディスク駆動装置）１０が接続されている。このＨＤＤ１０には各種のプログラムやデータベースが記憶されている。ＣＰＵ１は、このＨＤＤ１０に記憶されたプログラムをＲＡＭ９に格納して実行する。
【００１２】
ＨＤＤ１０に記憶されたプログラムのうち主要なプログラムとして、カラオケ制御プログラム１０Ａがある。このカラオケ制御プログラム１０Ａは、次のような処理をＣＰＵ１に実行させるプログラムである。まず、リモコン操作により指定されたカラオケ曲の曲番号をリモコン通信部７により受信し、その曲番号に対応した曲データを通信部６によりサーバ（図示略）から受信し、ＲＡＭ９に格納する。そして、ＲＡＭ９内の曲データに含まれるカラオケ伴奏データを読み出し、カラオケ伴奏音をサウンドシステム２に放音させるとともに、曲データに含まれる背景画像情報および歌詞情報に基づいて、画像および歌詞を表示部３に表示させる。ここで、曲データにはワイプ時間情報が含まれている。このワイプ時間情報は、歌詞における歌唱位置をユーザに示すために行うワイプ（塗り）のタイミングを指示する情報であり、歌詞を構成する各文字についてワイプを開始する時刻（曲の開始点を基準とした相対時刻）と、ワイプを終了する時刻を指定する。ＣＰＵ１は、このワイプ時間情報を参照することにより、表示部３に表示された歌詞の各文字のうち現在の歌唱位置に該当する文字を着色表示させる制御を行う。
【００１３】
カラオケ制御プログラム１０Ａは、歌唱評価プログラム１００を含む。この歌唱評価プログラム１００は、音声入力部４により取得される歌唱音声に基づき、歌唱の巧拙を評価するプログラムである。図１に示すカラオケ装置は、ＣＰＵ１がこの歌唱評価プログラム１００を実行することにより、本実施形態による歌唱評価装置として機能する。
【００１４】
本実施形態による歌唱評価プログラム１００は、操作部５の操作または図示しないリモコンの操作により所定のコマンドが与えられた場合に、本実施形態に特有の歌唱評価を行う機能を備えている。すなわち、歌唱音声の音高は無視し、歌詞をどの程度正確に歌唱しているかを評価する機能である。
【００１５】
この機能を実現するため、本実施形態による歌唱評価プログラム１００は、歌唱音声取得部１１０と、正解歌詞特定部１２０と、音素アライメント部１３０と、音素コンフィデンス評価部１４０と、継続長評価部１５０と、総合評価部１６０と、モデル学習部１７０とを含む。
【００１６】
本実施形態では、２つの観点から歌詞の歌唱の正確さの評価を行う。第１の観点は、歌詞を分解した各音素がどの程度正確に歌唱されているかという観点である。第２の観点は、歌詞を構成する文字の歌唱の継続長がどの程度正確であるかという観点である。
【００１７】
ＨＤＤ１０には、第１の観点での歌唱の評価を実現するための音響モデルデータベース１０１が記憶される。この音響モデルデータベース１０１は、各種の音素記号について定義された音素波形またはその特徴を定義した音響モデルの集合体である。
【００１８】
第２の観点での歌唱の評価を行うためには、歌詞の文字の歌唱の継続長と比較する基準が必要である。この基準として、歌詞の文字のワイプ時間を使用することも考えられるが、ワイプ時間は基準として適切ではない。何故ならば、実際の歌唱における歌詞の文字の歌唱の継続長に基づいてその文字のワイプ時間が決定されるとは限らないからである。そこで、第２の観点での評価を実現するために、カラオケ曲の全てについて、歌詞の文字の歌唱の継続長を測定し、各文字の歌唱の継続長を示すデータを用意することも考えられる。しかし、そのようなデータを用意するには大変な手間が掛かる。そこで、本実施形態では、学習により歌詞の文字の歌唱の継続長の基準を生成する。この学習により得られる基準がＨＤＤ１０内の継続長モデルデータベース１０２である。
【００１９】
この継続長モデルデータベース１０２は、様々なコンテキストにおいて歌詞中の各種の文字が歌唱されるときの歌唱の継続長の確率密度分布をコンテキスト毎に定義した継続長モデルの集合体である。ここで、コンテキストとは、歌唱される文字が一息に歌唱されるフレーズの中の何番目の文字であるか、そのフレーズの音素数、その文字のワイプ時間等、歌唱される文字の置かれた状況を意味する。本実施形態では、正解歌詞が特定された場合に、その正解歌詞の各文字が置かれたコンテキストを求め、継続長モデルデータベース１０２において、そのコンテキストに対応付けられた継続長モデルを基準として、歌詞の文字の歌唱の継続長の正確さの評価に使用する。
【００２０】
図２は歌唱評価プログラム１００の機能の概略を示す図である。歌唱音声取得部１１０は、音声入力部４を介して歌唱音声のサンプルデータを取得し、この歌唱音声のサンプルデータを有音区間と無音区間とに分け、有音区間のサンプルデータを歌唱音声フレーズとしてＲＡＭ９に格納するプログラムである。
【００２１】
正解歌詞特定部１２０は、ＲＡＭ９に格納された曲データ中の歌詞情報とワイプ時間情報を参照することにより、ＲＡＭ９内の歌唱音声フレーズに対応付ける正解歌詞を特定するとともに、正解歌詞を構成する音素記号列を特定するプログラムである。ここで、正解歌詞とは、曲データ中の歌詞情報が示す歌詞のうち歌唱音声フレーズにおいて歌唱されていると考えられる部分である。
【００２２】
音素アライメント部１３０は、音響モデルデータベース１０１を参照することにより、ＲＡＭ９内の歌唱音声フレーズに含まれる各音素波形区間の時間境界区切りを求め、歌唱音声フレーズを複数の音素波形区間に分割するプログラムである。
【００２３】
音素コンフィデンス評価部１４０は音響モデルデータベース１０１を参照して第１の観点での歌唱の評価を行うプログラムである。また、継続長評価部１５０は継続長モデルデータベース１０２を参照して第２の観点での歌唱の評価を行うプログラムである。そして、総合評価部１６０は、第１の観点での評価結果および第２の観点での評価結果に基づいて、歌詞の歌唱の正確さについての総合的評価を行うプログラムである。これらの音素コンフィデンス評価部１４０、継続長評価部１５０および総合評価部１６０が、歌詞の歌唱の正確さを評価する評価手段を構成している。
【００２４】
モデル学習部１７０は、通信部６等を介して供給される学習データに基づいて、音響モデルデータベース１０１および継続長モデルデータベース１０２を更新するプログラムである。以上が本実施形態による歌唱評価プログラム１００の機能の概略である。
【００２５】
次に歌唱評価プログラム１００を構成する各部の詳細について説明する。
本実施形態では、音響モデルデータベース１０１および継続時間モデルデータベース１０２を参照することにより、カラオケ演奏において歌手が歌詞をどの程度正確に歌唱しているかの評価を行う。以下、この音響モデルデータベース１０１および継続時間モデルデータベース１０２へのデータの蓄積を行うモデル学習部１７０について説明する。
【００２６】
本実施形態では、歌唱評価プログラム１００を本稼働させる前に、音響モデルデータベース１０１および継続時間モデルデータベース１０２を充実させるために学習データがモデル学習部１７０に与えられる。そして、モデル学習部１７０は、この学習データに基づいて、音響モデルデータベース１０１および継続時間モデルデータベース１０２へのデータの蓄積を行う。
【００２７】
図３はモデル学習部１７０に与えられる学習データの内容を例示するタイムチャートである。この学習データは、歌詞データと、歌詞データが示す歌詞の歌唱音声波形を示す歌唱音声データとにより構成されている。ここで、歌詞データには、歌詞の各文字のワイプ開始時刻とワイプ終了時刻を指定するワイプ時間情報が付加されている。また、歌唱音声データは、各々１つの音素記号に対応した音素波形区間に区切られており、各音素波形区間には該当する音素記号を示す音素ラベルデータが付加されている。
【００２８】
モデル学習部１７０は、このような歌詞データおよび歌唱音声データからなる学習データを受け取ると、歌唱音声データを無音区間と有音区間に分け、有音区間内のデータを歌唱音声フレーズとしてＲＡＭ９に格納する。そして、モデル学習部１７０は、歌唱音声フレーズを音素波形区間に分割し、各音素波形区間のデータ（音素波形のサンプルデータ）を各々の音素記号により分類して音響モデルデータベース１０１に蓄積する。
【００２９】
また、モデル学習部１７０は、歌詞データが示す歌詞のうち歌唱音声フレーズと同じ時間帯を占めるワイプ文字列を歌詞データ中のワイプ時間情報に基づいて求める。なお、この歌唱音声フレーズと同じ時間帯を占めるワイプ文字列を求めるアルゴリズムは、正解歌詞特定部１２０に採用されているアルゴリズムと同様である。そして、モデル学習部１７０は、歌唱音声フレーズと同じ時間帯を占めるワイプ文字列の各ワイプ文字を音素記号に分解し、このようにして得られる各音素記号を歌唱音声フレーズを分割した各音素波形区間に対応付ける。そして、モデル学習部１７０は、各ワイプ文字について、当該ワイプ文字を分割した各音素記号に対応した各音素波形区間の継続長を加算することにより当該ワイプ文字の歌唱の継続長を算出する。
【００３０】
また、モデル学習部１７０は、歌唱音声フレーズと同じ時間帯を占めるワイプ文字列の各ワイプ文字についてコンテキストを求め、各ワイプ文字の歌唱の継続長をコンテキストに基づいてクラスタリングし、継続長モデルデータベース１０２に蓄積する。
【００３１】
図４はこのモデル学習部１７０が各ワイプ文字について求めるコンテキストの内容を例示するタイムチャートである。この例では、歌唱音声フレーズと同じ時間帯内に「君を忘れない」というワイプ文字列がワイプされている。以下、このワイプ文字列中のワイプ文字「な」を例に、コンテキストの内容を説明する。
【００３２】
コンテキストの最初のデータは、ワイプ文字の総母音数／総子音数／総音素数である。ワイプ文字「な」に対応する音素列は「ｎａ」であるので、総母音数＝１、総子音数＝１、総音素数＝２がコンテキストの最初のデータとなる。コンテキストの２番目のデータは、ワイプ文字が母音のみか？／子音のみか？／子音＋母音か？である。ワイプ文字「な」の場合、子音＋母音の組み合わせを示すデータがコンテキストの２番目のデータとなる。
【００３３】
コンテキストの３番目のデータは、ワイプ文字の最初の音素と最後の音素である。ワイプ文字「な」の場合、最初の音素「ｎ」と最後の音素「ａ」を示すデータがコンテキストの３番目のデータとなる。コンテキストの４番目のデータは、１歌唱音声フレーズに対応したワイプ文字列内での当該ワイプ文字の位置（先頭から何番目か）である。この例ではワイプ文字「な」は先頭から５番目にあるのでコンテキストの４番目のデータは５となる。そして、コンテキストの５番目のデータは、当該ワイプ文字のワイプの時間長である。ワイプ文字「な」の場合、歌詞データに付加されている文字「な」のワイプ時間データが示すワイプ開始時刻からワイプ終了時刻までの時間がコンテキストの５番目のデータとなる。
【００３４】
モデル学習部１７０は、このようなコンテキストを各ワイプ文字について求め、各ワイプ文字の歌唱の継続長を図５に示すようにコンテキストに基づいてクラスタリングして継続長モデルデータベース１０２に蓄積する。なお、図５における横軸の歌唱の継続長、以下の説明における１２００ｍｓ、８００ｍｓ等の継続長は、あくまでも一例であり、実際にはこれら以外の継続長となる場合があり得る。
【００３５】
まず、モデル学習部１７０は、コンテキストが示すワイプの時間長が１２００ｍｓ以上か否かを判断し、この判断結果が「Ｎｏ」である場合はワイプの時間長が８００ｍｓ以上か否かを判断し、という具合に各ワイプ文字の歌唱の継続長をワイプ時間の範囲の異なった複数のグループにクラスタリングする。図５には、ワイプ時間が８００ｍｓ以上であるグループにクラスタリングされた各ワイプ文字の歌唱の継続長の確率密度分布が例示されている。この確率密度分布は、継続長の頻度分布から推定されたものであり、具体的には継続長の頻度分布に対して尤度が最大となるガウス分布である。モデル学習部１７０は、この確率密度分布（ガウス分布）を特定するパラメータを記憶している。モデル学習部１７０は、ワイプ時間が８００ｍｓ以上であるグループ以外のグループに関しても、同様な継続長の確率密度分布のパラメータを記憶している。
【００３６】
次にモデル学習部１７０は、ワイプ時間の範囲によりクラスタリングされた各グループの各ワイプ文字の歌唱の継続長を、ワイプ文字が例えば歌唱音声フレーズ内の最後から１番目の文字かという具合に、フレーズ内文字位置によりクラスタリングする。図５には、ワイプ時間が８００ｍｓ未満であり、かつ、歌唱音声フレーズ内の最終文字であるグループにクラスタリングされた各ワイプ文字の歌唱の継続長の確率密度分布が例示されている。
【００３７】
図示は省略したが、モデル学習部１７０は、このようにしてクラスタリングした各ワイプ文字の歌唱の継続長をコンテキストの他の種類のデータによりさらにクラスタリングする。そして、モデル学習部１７０は、学習データが与えられる都度、その学習データから求めた各ワイプ文字の歌唱の継続長について、このようなコンテキストに基づくクラスタリングを行って、継続長モデルデータベース１０２に蓄積するのである。
【００３８】
本実施形態では、このようにモデル学習部１７０によってデータの蓄積された音響モデルデータベース１０１および継続時間モデルデータベース１０２を参照することにより、歌唱者が歌詞をどの程度正確に歌唱しているかの評価が行われる。以下、この歌詞の歌唱の正確さを評価するための各プログラムの機能の詳細を説明する。
【００３９】
歌唱音声取得部１１０は、有音区間における入力音声の特徴を定義した有音モデルと、無音区間における音声の特徴を定義した無音モデルとを記憶している。歌唱音声取得部１１０は、音声入力部４を介して歌唱音声のサンプルデータを取得し、この歌唱音声のサンプルデータを有音モデルおよび無音モデルの各々と比較することにより、有音区間と無音区間とに分け、有音区間のサンプルデータを歌唱音声フレーズのサンプルデータとしてＲＡＭ９に格納する。図６はこのようにして得られる歌唱音声フレーズと元の歌唱音声との関係を示すタイムチャートである。
【００４０】
正解歌詞特定部１２０は、ＲＡＭ９内の各歌唱音声フレーズに対応付ける正解歌詞を特定する。この正解歌詞の特定のために、正解歌詞特定部１２０は、前処理として、単語や文法の辞書を参照することにより、歌詞データが示す歌詞の形態素解析を行い、歌詞を言語としての意味をもつ最小単位である形態素（具体的には品詞）に分解する。また、正解歌詞特定部１２０は、形態素解析により得られた形態素からモーラ（音）を生成し、このモーラに基づいて、音素記号列を生成する。
【００４１】
以上の前処理を終えると、正解歌詞特定部１２０は、ＲＡＭ９内の各歌唱音声フレーズに対応付ける正解歌詞を特定するための処理を実行する。すなわち、正解歌詞特定部１２０は、歌詞データが示す歌詞の各文字のワイプ時間情報に基づき、歌詞を構成する文字のうち歌唱音声フレーズの開始時刻および終了時刻の付近においてワイプされる文字を求め、歌唱音声フレーズに対応する正解歌詞を特定する。より具体的には、正解歌詞特定部１２０は、歌詞の各文字のワイプ時間情報を参照することにより、歌唱音声フレーズの歌唱開始時刻の前後にワイプ開始時刻とワイプ終了時刻があるワイプ文字を始点文字とし、当該歌唱音声フレーズの歌唱終了時刻の前後にワイプ開始時刻とワイプ終了時刻があるワイプ文字を終点文字とし、始点文字から終点文字までの歌詞の文字列を歌唱音声フレーズに対応付ける正解歌詞として特定する。さらに正解歌詞特定部１２０は、この正解歌詞を構成する音素記号列を歌唱音声フレーズに対応付ける。
【００４２】
図７（ａ）〜（ｄ）はこの歌唱音声フレーズへの正解歌詞の対応付け処理の内容を例示する図である。この例では、図７（ａ）に示すように、「今日はいい天気だから散歩に出かけよう」という歌詞が表示部３に表示される。この歌詞が表示部３に表示される間、ＲＡＭ９に記憶された歌詞の各文字のワイプ時間情報に従って、表示部３に表示された歌詞の各文字のワイプ（塗り)が行われる。
【００４３】
図７（ｂ）はこのワイプ時間情報の内容を例示するものである。表示部３に表示された歌詞の各文字は、その文字に対応したワイプ情報が示す開始時刻においてワイプが開始され、終了時刻においてワイプが終了する。
【００４４】
図７（ｃ）は、時間軸を横軸とし、ワイプされる各文字を時系列的に示したものである。歌唱者は、このようにして表示部３に表示された歌詞の各文字がワイプされるのに合わせて、各文字の歌唱を行う。そして、歌唱音声取得部１１０は、この歌唱により発生する歌唱音声のサンプルデータを取り込み、有音区間のサンプルデータを歌唱音声フレーズのサンプルデータとしてＲＡＭ９に格納する。
【００４５】
図７（ｄ）は、この歌唱音声フレーズの歌唱期間を図７（ｃ）と同じ時間軸上に示したものである。この例では、「今日はいい天気だから」という歌詞の各文字のワイプが行われる間に２つの歌唱音声フレーズの歌唱が行われ、各歌唱音声フレーズがＲＡＭ９に格納されている。ここで、図７（ｄ）の先行する歌唱音声フレーズに着目すると、この歌唱音声フレーズの歌唱開始時刻の前後には「今」という文字のワイプ開始時刻とワイプ終了時刻があり、この歌唱音声フレーズの歌唱終了時刻の前後には「は」という文字のワイプ開始時刻とワイプ終了時刻がある。そこで、正解歌詞特定部１２０は、始点文字「今」から終点文字「は」までの「今日は」という文字列を先行する歌唱音声フレーズに対応した正解歌詞として特定する。正解歌詞特定部１２０では、同様のことを後続の歌唱音声フレーズについても実行し、文字列「いい天気だから」を後続の歌唱音声フレーズに対応する正解歌詞として特定する。
【００４６】
また、歌唱の仕方によっては、歌唱音声フレーズの歌唱開始時刻または歌唱終了時刻の前後にワイプ開始時刻とワイプ終了時刻を有する文字が存在せず、始点文字または終点文字を決定することができない事態も発生し得る。このような事態が発生した場合は、例えば次のようなルールに従って対処すればよい。
ａ．歌唱音声フレーズの歌唱開始時刻の前後にワイプ開始時刻とワイプ終了時刻を有する文字がない場合（歌い出しが早い場合）は、当該歌唱音声フレーズの歌唱開始時刻の直後にワイプ開始時刻を有する文字を始点文字とする。
ｂ．歌唱音声フレーズの歌唱終了時刻の前後にワイプ開始時刻とワイプ終了時刻を有する文字がない場合（歌い終わりが遅い場合）は、当該歌唱音声フレーズの歌唱終了時刻の直前にワイプ終了時刻を有する文字を終点文字とする。
【００４７】
また、先行する歌唱音声フレーズの歌唱終了時刻と後続の歌唱音声フレーズの歌唱開始時刻が接近しているような場合、先行する歌唱音声フレーズの終点文字と後続の歌唱音声フレーズの始点文字が重複する事態が発生し得る。図８（ａ）および（ｂ）はこのような事態の例を示すものである。この例では、図８（ａ）に示すように「今僕の目の前には」という歌詞の各文字のワイプが行われる間に、図８（ｂ）に示すように２つの歌唱音声フレーズが取得されている。そして、「目」という文字のワイプ開始時刻とワイプ終了時刻との間に先行する歌唱音声フレーズの歌唱終了時刻と後続の歌唱音声フレーズの歌唱開始時刻が挟まれている。
【００４８】
このような状況において、先行する歌唱音声フレーズと後続の歌唱音声フレーズの両方に上述のルールを適用すると、文字「目」が先行する歌唱音声フレーズの終点文字とされるととともに、後続の歌唱音声フレーズの始点文字とされる。この結果、図８（ｃ）に示すように、先行する歌唱音声フレーズには音素列「ｉｍａｂｏｋｕｎｏｍｅ」が、後続の歌唱音声フレーズには「ｍｅｎｏｍａｅｎｉｗａ」が対応付けられる。共通の音素列「ｍｅ」が先行する歌唱音声フレーズと後続の歌唱音声フレーズの両方に重複して対応付けられるという不都合が発生する。
【００４９】
そこで、ある好ましい態様では、先行する歌唱音声フレーズの終点文字と後続の歌唱音声フレーズの始点文字が共通の文字となる場合に先行する歌唱音声フレーズを優先する。すなわち、先行する歌唱音声フレーズの終点文字はその共通の文字とし、後続の歌唱音声フレーズの始点文字はその共通の文字の次の文字とする。従って、この例では、図８（ｄ）に示すように、先行する歌唱音声フレーズについては、共通の文字「目」を終点文字とし、音素列「ｉｍａｂｏｋｕｎｏｍｅ」を対応付け、後続の歌唱音声フレーズについては、共通の文字「目」の次の文字「の」を始点文字とし、音素列「ｎｏｍａｅｎｉｗａ」を対応付けることとなる。
【００５０】
ここで、歌唱者が歌詞を「今僕の目」と「の前には」に区切って歌唱したのであれば、図８（ｄ）に示す対応付けは適切なものになる。しかし、歌唱者が歌詞を例えば「今僕の」と「目の前には」に区切って歌唱したのであれば図４（ｄ）に示す対応付けは不適切なものになる。
【００５１】
そこで、歌唱音声フレーズでの歌詞の対応付けに関しては図９（ａ）〜（ｃ）に例示する他の態様が考えられる。この態様では、歌唱音声フレーズ（図９（ｂ）参照）の歌唱開始時刻および終了開始時刻の各々に図９（ａ）に示すようにマージン±αを与え、次のように１または複数の始点文字と終点文字を決定する。
ａ．歌唱音声フレーズの歌唱開始時刻±αの範囲内にワイプ開始時刻またはワイプ終了時刻のあるワイプ文字を始点文字とする。
ｂ．歌唱音声フレーズの歌唱終了時刻±αの範囲内にワイプ開始時刻またはワイプ終了時刻のあるワイプ文字を始点文字とする。
【００５２】
そして、このようにして得られる１または複数の始点文字と１または複数の終点文字を使って、始点文字と終点文字の全ての組み合わせを作る。そして、各組み合わせの始点文字から終点文字までの歌詞の音素列の各々を歌唱音声フレーズに対応付ける音素列とするのである。
【００５３】
この例では、歌唱音声フレーズの歌唱開始時刻±αの範囲内にワイプ開始時刻またはワイプ終了時刻があるのは、文字「今」のみであるので、この文字「今」のみが始点文字となる。
【００５４】
一方、歌唱音声フレーズの歌唱終了時刻±αの範囲内には、「目」の前の「の」のワイプ終了時刻と、「目」のワイプ開始時刻およびワイプ終了時刻と、「目」の後の「の」のワイプ開始時刻がある。従って、「目」の前の「の」、「目」、「目」の後の「の」の３文字が終点文字となる。
【００５５】
従って、図９（ｃ）に示すように、音素列「ｉｍａｂｏｋｕｎｏ」と、音素列「ｉｍａｂｏｋｕｎｏｍｅ」と、音素列「ｉｍａｂｏｋｕｎｏｍｅｎｏ」の３つの音素列が歌唱音声フレーズに各々対応付けられる。そして、後述する音素コンフィデンススコアおよび継続長スコアの評価においては、この３つの音素列の各々について各音素の音素コンフィデンススコアおよび継続長スコアを計算し、音素列全体としての最終スコアが最大となる音素列を選択し、選択した音素列の最終スコアを採用するのである。
この態様は、演算量が増えるが、正確な評価結果が得られるという利点がある。
【００５６】
正解歌詞特定部１２０により正解歌詞およびその音素記号列が特定されたＲＡＭ９内の歌唱音声フレーズは、音素アライメント部１３０により音素波形区間に分割される。
【００５７】
音素コンフィデンス評価部１４０は、音素アライメント部１３０により分割された歌唱音声フレーズの各音素波形が正解歌詞特定部１２０により特定された正解歌詞の音素記号列の各音素記号に該当すると認められる程度を評価する。
【００５８】
図１０はこの音素コンフィデンス評価部１４０の処理内容を例示するタイムチャートである。この例では、正解歌詞特定部１２０により音素記号列「ｓｕｂｅｔｅ」が歌唱音声フレーズに対応する正解歌詞の音素記号列として特定されている。そこで、音素コンフィデンス評価部１４０は、歌唱音声フレーズを６個の音素波形区間に分割する。そして、音素コンフィデンス評価部１４０は、６個の音素波形区間の各々について次のことを実行する。すなわち、音響モデルデータベース１０１において各種の音素記号について定義された各音素波形について、その音素波形が他の音素波形に比べてどの程度当該音素波形区間の音素波形（すなわち、歌唱音声フレーズに含まれる音素波形）らしいかを示す音素コンフィデンスを算出し、そのうち音素コンフィデンスが高いものから順に上位５者を選択するのである。
【００５９】
ここで、音素コンフィデンスは次のようにして算出される。まず、Ｏを観測系列とした場合、ある音素／Ｎ／の事後確率が次式により表されるものとする。
音素／Ｎ／の事後確率＝Ｐ（ｐｈｎ＝／Ｎ／｜Ｏ）                ……（１）
【００６０】
この場合、ある音素／Ｎ／の音素コンフィデンスは次式により算出される。
音素／Ｎ／の音素コンフィデンス
＝Ｐ（ｐｈｎ＝／Ｎ／｜Ｏ）／ΣｋＰ（ｐｈｎ＝ｋ｜Ｏ）    ……（２）
【００６１】
図１０には式（２）により算出した音素コンフィデンスを対数確率表現した数値が示されている。図１０に示す例において、最初の音素波形区間に対応した正解歌詞の音素記号は「ｓ」であるが、同音素波形区間について各種の音素波形の音素コンフィデンスを算出すると、音素コンフィデンスが１位から５位である各音素波形は、音素記号「ｚ」、「ｓ」、「ｊ」、「ｔｓ」について定義された各音素波形となった。正解歌詞の音素記号「ｓ」の音素コンフィデンスは２位である。２番目の音素波形区間に対応した正解歌詞の音素記号は「ｕ」である。この音素波形区間について各種の音素波形の音素コンフィデンスを算出すると、正解歌詞の音素記号「ｕ」の音素波形の音素コンフィデンスが１位となった。そして、図１０に示す例において、２、３、４、６番目の各音素波形区間では、正解歌詞の音素記号の音素コンフィデンスが１位となったが、１、５番目の各音素波形区間では、正解歌詞の音素記号の音素コンフィデンスが１位にならなかった。理想的には、歌唱者が正解歌詞通りに歌唱を行った場合、歌唱音声フレーズの全ての音素波形区間において正解歌詞の音素記号の音素コンフィデンスが１位になる。しかし、データのばらつき等によりモデル学習が上手く行われなかった場合、この例のように音素コンフィデンスが１位とならない場合があり得る。
【００６２】
そこで、本実施形態では、歌唱音声フレーズの各音素波形区間の音素波形について、図１１に例示するように、正解歌詞の音素記号に対応した音素波形の音素コンフィデンスが３位以内であるという条件と、その音素コンフィデンスが−１５．０よりも大きいという条件を満たすか否かを判定する。そして、２つの条件の少なくとも一方を満たす場合に、その音素波形区間内の音素波形を合格音素とし、両方の条件を満たさない場合にその音素波形区間内の音素波形を不合格音素とする。そして、歌唱音声フレーズの音素波形区間の数に対する合格音素の数の比を音素コンフィデンススコアとする。この音素コンフィデンススコアがどの程度正確に歌詞を歌唱しているかを示す評価値である。図１１に示す例では、音素波形区間が１５個あるのに対し、合格音素数が１４個となったため、音素コンフィデンススコアは１４／１５＝９３．３％となる。なお、この例では合格音素／不合格音素の判定を行うために、音素コンフィデンスが−１５．０よりも大きいという条件を採用したが、これはあくまでも一例であり、−１５．０以外の数値を採用してもよい。
【００６３】
次に継続長評価部１５０について説明する。継続長評価部１５０は、音素アライメント部１３０により分割された歌唱音声フレーズの各音素波形の継続長を求める。そして、継続長評価部１５０は、この各音素波形の継続長に基づいて、正解歌詞特定部１２０が歌唱音声フレーズに対応する正解歌詞として特定した文字列の各文字の歌唱の継続長を算出する。そして、継続長評価部１５０は、継続長モデルデータベース１０２を参照することにより、正解歌詞の各文字の歌唱の継続長が正確である程度を示す継続長スコアを求める。さらに詳述すると、継続長評価部１５０は、正解歌詞の各文字について、上述したモデル学習部１７０が生成したものと同様なコンテキストを生成する。そして、継続長評価部１５０は、正解歌詞の各文字について、当該文字のコンテキストに対応付けられた文字の歌唱の継続長の確率密度分布を示すデータを継続長モデルデータベース１０２から読み出し、当該文字の実歌唱時間がその確率密度分布において有する確率密度（当該文字のコンテキストに対応した実歌唱時間らしさを示す値であり、以下、継続長確率密度という）を当該文字の継続長尤度として算出する。継続長評価部１５０は、この継続長尤度を正解歌詞の全文字について平均化することにより継続長スコアを算出する。
【００６４】
図１２は正解歌詞特定部１２０、音素アライメント部１３０および継続長評価部１５０の処理の具体例を示すタイムチャートである。この例では正解歌詞特定部１２０により歌唱音声フレーズに対応した正解歌詞として文字列「せかされるように」が特定され、この正解歌詞の音素記号列「ｓｅｋａｓａｒｅｒｕｙｏｕｎｉ」が特定された。このため、音素アライメント部１３０は、歌唱音声フレーズを１４個の音素波形区間に分割した。
【００６５】
そこで、継続長評価部１５０は、音素「ｓ」、「ｅ」の音素波形が所在していると考えられる１番目および２番目の各区間の継続長を加算し、正解歌詞の文字「せ」の歌唱の継続長を算出する。また、継続長評価部１５０は、音素「ｋ」、「ａ」の音素波形が所在していると考えられる２つの区間の継続長を加算し、正解歌詞の文字「か」の歌唱の継続長を算出する。以下同様に、継続長評価部１５０は、正解歌詞の各文字に対応した音素波形区間の継続長を加算することにより、正解歌詞の文字「さ」、「れ」、「る」、「よう」、「に」の歌唱の継続長を各々算出する。
【００６６】
次に継続長評価部１５０は、正解歌詞の最初の文字「せ」のコンテキスト（図４参照）を求め、継続長モデルデータベース１０２において当該コンテキストに対応付けられた歌唱の継続長の確率密度分布を参照することにより、文字「せ」の歌唱の継続長尤度を算出する。この例では文字「せ」の継続長尤度は−１０．９５となった。次に続長評価部１５０は、正解歌詞の２番目の文字「か」のコンテキストを求め、継続長モデルデータベース１０２において当該コンテキストに対応付けられた歌唱の継続長の確率密度分布を参照することにより、文字「か」の歌唱の継続長尤度を算出する。この例では文字「か」の継続長尤度は−１．１３となった。以下同様に、継続長評価部１５０は、正解歌詞における後続の各文字の継続長尤度を求める。そして、正解歌詞の全ての文字の継続長尤度を平均化し、継続長スコアを算出する。この例では、正解歌詞「せかされるように」を歌唱した歌唱音声フレーズの継続長スコアは−３．０７となった。
【００６７】
総合評価部１６０は、音素コンフィデンス評価部１４０の評価結果である音素コンフィデンススコアと、継続長評価部１５０の評価結果である継続長スコアとに基づき、歌唱音声フレーズが正解歌詞を総合的にどの程度正確に歌唱したものであるかを示す最終スコアを算出する。本実施形態において総合評価部１５０は、次式に従って最終スコアを算出する。
最終スコア＝音素コンフィデンススコア＋継続長スコア×１０            ……（３）
【００６８】
この最終スコアでは、音素コンフィデンススコアが大きな割合を占める。このようの音素コンフィデンススコアの割合を大きくしたのは、音素コンフィデンススコアの方が継続長スコアよりも歌詞の歌唱の正確さとの結びつきが強いと考えられるからである。
【００６９】
図１３〜図１５は、本実施形態において行われる歌詞の歌唱の正確さの評価の例を示す図である。これらの図には、歌唱音声フレーズの波形と、正解歌詞の文字列と、音素アライメント部により分割された音素波形区間に対応付けられた正解歌詞の音素記号と、正解歌詞の音素記号の音素波形が音素波形区間の音素波形であるらしい程度を示す音素コンフィデンスの順位と、各音素波形区間の音素が合格音素であるか不合格音素であるかの情報が示されている。また、図１３〜図１５では、音素コンフィデンス評価部１４０により算出された音素コンフィデンススコアと、継続長評価部１５０により算出された継続長スコアと、総合評価部１６０により算出された最終スコアが示されている。
【００７０】
図１３に示す例では、正解歌詞を構成する音素記号の個数が２１であるのに対し、合格音素の数が２０個であるため、音素コンフィデンススコアは９５．２％となった。また、各音素波形の継続長も適切であり、継続長スコアは０．０２４となった。このため、最終スコアは９５．４％となった。これは歌詞が正確に歌唱された場合の評価結果の例である。
【００７１】
図１４に示す例では、正解歌詞の音素記号数が１７であるのに対して、合格音素数が１６個であるため音素コンフィデンススコアは８３．３％となった。また、各音素波形の継続長は図１３よりもやや不正確であり、継続長スコアは−１．０８０となった。このため、最終スコアは７３．２％となった。
【００７２】
図１５に示す例では、多くの不合格音素が発生して音素コンフィデンススコアは６２．５％と低く、各音素波形の継続長も不正確であり、継続長スコアは−１．６９６となった。このため、最終スコアは４５．５％という低い評点になった。これは歌詞通りの言葉になっていない程度の歌唱の例である。
【００７３】
さて、図９（ａ）〜（ｃ）を参照して説明したように、ある好ましい態様において正解歌詞特定部１２０は、１つの歌唱音声フレーズに対応する正解歌詞を複数種類特定する場合がある。この態様では、音素アライメント部１３０、音素コンフィデンス評価部１４０、継続長評価部１５０および総合評価部１６０は、それらの全ての種類の正解歌詞について各々の処理を実行する。
【００７４】
例えば図９（ｃ）に示す３種類の正解歌詞が特定されたとする。この場合、最初の正解歌詞の音素記号列「ｉｍａｂｏｋｕｎｏ」の音素数が９個であるため、音素アライメント部１３０は、歌唱音声フレーズを９個の音素波形区間に分割する。そして、音素コンフィデンス評価部１４０は、それら９個の音素波形区間について音素コンフィデンスおよび音素コンフィデンススコアを算出する。また、継続長評価部１５０は、それら９個の音素波形区間について継続長確率密度および継続長スコアを算出する。そして、総合評価部１６０は、この音素コンフィデンススコアおよび継続長スコアに基づいて最終スコアを算出する。次に２番目の正解歌詞の音素記号列「ｉｍａｂｏｋｕｎｏｍｅ」の音素数が１１個であるため、音素アライメント部１３０は、歌唱音声フレーズを１１個の音素波形区間に分割する。音素コンフィデンス評価部１４０、継続長評価部１５０は、この１１個の音素波形区間の処理を行って音素コンフィデンススコアおよび継続長スコアを算出する。そして、総合評価部１６０は、この音素コンフィデンススコアおよび継続長スコアに基づいて最終スコアを算出する。最後の正解歌詞の音素記号列「ｉｍａｂｏｋｕｎｏｍｅｎｏ」についても同様である。そして、総合評価部１６０は、正解歌詞の音素記号列「ｉｍａｂｏｋｕｎｏ」、「ｉｍａｂｏｋｕｎｏｍｅ」および「ｉｍａｂｏｋｕｎｏｍｅｎｏ」の各最終評価を比較し、最も高いものを最終評価として採用するのである。
【００７５】
この態様によれば、歌唱の評価の演算量は増えるが、より正確に歌詞の歌唱の評価を行うことができる利点がある。
【００７６】
以上のように本実施形態によれば、歌唱者がどの程度歌詞を正確に歌唱しているかを客観的に評価することができる。また、本実施形態によれば、無音区間により区切られた歌唱音声フレーズについて正解歌詞を特定し、歌詞をどの程度正確に歌唱しているかの評価を行うので、評価の演算処理のためにＲＡＭ９に記憶させるデータの量を少なくすることができ、小規模な装置構成により歌唱評価装置を実現することができる。また、本実施形態によれば、継続長モデルデータベース１０２を参照し、ワイプ文字の歌唱の継続長がどの程度正確かという観点での評価結果を最終スコアに反映させるので、歌詞をどの程度正確に歌唱しているかという観点での評価をより正確に行うことができる。継続長モデルデータベース１０２として、コンテキストによりクラスタリングされたワイプ文字の歌唱の継続長の確率密度分布の集合体を使用するので、ワイプ文字の実際の歌唱の継続長の確率密度を算出する処理を効率的に行うことができる。従って、最終スコアを得るための処理時間を短くすることができる。
【００７７】
以上、この発明の一実施形態について説明したが、この発明には他にも実施形態が考えられる。例えば次の通りである。
【００７８】
（１）上記実施形態では、歌唱評価プログラム１００にモデル学習部１７０を設けたが、予め完成された音響モデルデータベース１０１および継続長モデルデータベース１０２をＨＤＤ１０に格納する場合には、このモデル学習部１７０を省略してもよい。
【００７９】
（２）上記実施形態では、音素コンフィデンススコアと継続長スコアとに基づいて最終スコアを算出したが、ユーザからの指示に従い、最終スコアに継続長スコアを反映させるか否かを切り換えるようにしてもよい。
【００８０】
（３）上記実施形態では、文字の歌唱の継続長のみについてコンテキストに基づくクラスタリングを行って継続長モデルデータベース１０２に蓄積したが、学習データ中の音素波形についても同様なコンテキストに基づくクラスタリングを行った音響モデルデータベース１０１に蓄積してもよい。この場合、音素コンフィデンス評価部１４０は、歌唱音声フレーズ中の各音素波形と同じコンテキストに対応した音響モデルを音響モデルデータベース１０１から読み出して音素コンフィデンスの算出に使用することにより、より妥当な音素コンフィデンスを算出することが可能になる。
【符号の説明】
【００８１】
１……ＣＰＵ、２……サウンドシステム、３……表示部、４……音声入力部、５……操作部、６……通信部、７……リモコン通信部、８……ＲＯＭ、９……ＲＡＭ、１０……ＨＤＤ、１０Ａ……カラオケ制御プログラム、１００……歌唱評価プログラム、１１０……歌唱音声取得部、１２０……正解歌詞特定部、１３０……音素アライメント部、１４０……音素コンフィデンス評価部、１５０……継続長評価部、１６０……総合評価部、１７０……モデル学習部、１０１……音響モデルデータベース、１０２……継続長モデルデータベース。
【図１】
2015079160.tif 000003
【図２】
2015079160.tif 000004
【図３】
2015079160.tif 000005
【図４】
2015079160.tif 000006
【図５】
2015079160.tif 000007
【図６】
2015079160.tif 000008
【図７】
2015079160.tif 000009
【図８】
2015079160.tif 000010
【図９】
2015079160.tif 000011
【図１０】
2015079160.tif 000012
【図１１】
2015079160.tif 000013
【図１２】
2015079160.tif 000014
【図１３】
2015079160.tif 000015
【図１４】
2015079160.tif 000016
【図１５】
2015079160.tif 000017