(57)【要約】【課題】練習者の歌唱や楽器の演奏に対し、その模範となる歌唱や演奏との発音タイミングのずれや発音の間違いをより正確に指摘する。【解決手段】対応箇所検出部１１２は、模範音声データと練習者音声データの時間軸をＤＰマッチングによって合わせ、その時間軸上の位置を同じくする音どうしを対応付ける。発音内容比較部１１３及び発音タイミング比較部１１４は、模範音声データと練習者音声データの発音タイミング及び発音内容を比較し、その相違箇所を表示する。よって、練習者は、自らの歌唱に発音タイミングのずれや発音の間違いがあることを明確に意識することができると共に、その相違箇所や相違内容を視覚的に把握することができる。【選択図】図３
2007233077.tif 000002
【特許請求の範囲】
【請求項１】
発音タイミングが時系列に連なる複数の音素を表す第１の音データを、該各音素の発音タイミングと対応付けて記憶する第１の記憶手段と、
音を収音する収音手段から供給される第２の音データを記憶する第２の記憶手段と、
前記第１の音データと前記第２の音データとを所定時間長のフレーム単位で対応付け、対応付けたフレームを表す対応箇所データを生成する対応箇所検出手段と、
前記第２の音データが表す音素の発音タイミングを、前記第１の音データが表わす音素の発音タイミングと前記対応箇所データとに基づいて特定し、該第１の音データが表わす音素の発音タイミングと該第２の音データが表わす音素の発音タイミングとの差分が閾値を超えるか否かを判断する比較手段と、
前記比較手段によって前記差分が閾値を超えると判断された音素を特定する情報を出力する出力手段と
を備えることを特徴とする評価装置。
【請求項２】
前記比較手段によって前記差分が閾値を超えると判断された音素が所定数以上連続するか否かを判断する判断手段を備え、
前記出力手段は、前記差分が閾値を超えると判断された音素を特定する情報に加えて、前記判断手段によって前記差分が閾値を超えると判断された音素が所定数以上連続すると判断された場合と所定数以上連続しないと判断された場合とでそれぞれ異なるメッセージを出力する請求項１記載の評価装置。
【請求項３】
前記比較手段によって前記差分が閾値を超えると判断された回数を累算する累算手段を備え、
前記出力手段は、前記差分が閾値を超えると判断された音素を特定する情報に加えて、前記累算手段による累算結果に応じたメッセージを出力する請求項１記載の評価装置。
【請求項４】
前記比較手段によって前記差分が閾値を超えると判断された音素を、前記第１の音データに対応付けて記憶する履歴記憶手段と、
前記第１の音データに対応付けて伴奏データを記憶する第３の記憶手段と、
前記第３の記憶手段によって記憶されている伴奏データを再生する再生手段と、
前記再生手段によって伴奏データが再生されるのに先立って又はその再生に同期して、前記第３の記憶手段により当該伴奏データに対応付けて記憶された第１の音データに対応付けて前記履歴記憶手段に記憶されている音素を特定する情報を出力する事前出力手段と
を備えることを特徴とする請求項１記載の評価装置。
【請求項５】
発音タイミングが時系列に連なる複数の音素を表す音データを、該各音素の発音タイミングと対応付けて記憶する第１の記憶手段と、
音を収音する収音手段から供給される第２の音データを記憶する第２の記憶手段と、
前記第１の音データと前記第２の音データとを所定時間長のフレーム単位で対応付け、対応付けたフレームを表す対応箇所データを生成する対応箇所検出手段と、
前記第１の音データが表す音素と前記第２の音データが表す音素とを前記対応箇所データによって表されるフレーム単位で比較し、該第１の音データが表わす音素と該第２の音データが表わす音素との差分が閾値を超えるか否かを判断する比較手段と、
前記比較手段によって前記差分が閾値を超えると判断された音素を特定する情報を出力する出力手段と
を備えることを特徴とする評価装置。
【請求項６】
前記出力手段は、前記比較手段によって前記差分が閾値を超えると判断された音素を特定する情報を前記練習者に報知することを特徴とする請求項１又は５記載の評価装置。
【請求項７】
前記比較手段によって前記差分が閾値を超えると判断された回数を累算する累算手段を備え、
前記出力手段は、前記差分が閾値を超えると判断された音素を特定する情報に加えて、前記累算手段による累算結果に応じたメッセージを出力する請求項５記載の評価装置。
【請求項８】
前記比較手段によって前記差分が閾値を超えると判断された音素を前記第１の音データに対応付けて記憶する履歴記憶手段と、
前記第１の音データに対応付けて伴奏データを記憶する第３の記憶手段と、
前記第３の記憶手段によって記憶されている伴奏データを再生する再生手段と、
前記再生手段によって伴奏データが再生されるのに先立って又はその再生に同期して、前記第３の記憶手段により当該伴奏データに対応付けて記憶された第１の音データに対応付けて前記履歴記憶手段に記憶されている音素を特定する情報を出力する事前出力手段と
を備えることを特徴とする請求項５記載の評価装置。
【請求項９】
発音タイミングが時系列に連なる複数の音素を表す第１の音データを、該各音素の発音タイミングと対応付けて記憶する第１の記憶手段と、音を収音する収音手段から供給される第２の音データを記憶する第２の記憶手段と、制御手段とを備える評価装置の制御方法であって、
前記制御手段が、前記第１の音データと前記第２の音データとを所定時間長のフレーム単位で対応付け、対応付けたフレームを表す対応箇所データを生成するステップと、
前記制御手段が、前記第２の音データが表す音素の発音タイミングを、前記第１の音データが表わす音素の発音タイミングと前記対応箇所データとに基づいて特定し、該第１の音データが表わす音素の発音タイミングと該第２の音データが表わす音素の発音タイミングとの差分が閾値を超えるか否かを判断するステップと、
前記制御手段が、前記差分が閾値を超えると判断された音を特定する情報を出力するステップと
を備えることを特徴とする制御方法。
【請求項１０】
発音タイミングが時系列に連なる複数の音素を表す第１の音データを、該各音素の発音タイミングと対応付けて記憶する第１の記憶手段と、音を収音する収音手段から供給される第２の音データを記憶する第２の記憶手段と、制御手段とを備える評価装置の制御方法であって、
前記制御手段が、前記第１の音データと前記第２の音データとを所定時間長のフレーム単位で対応付け、対応付けたフレームを表す対応箇所データを生成するステップと、
前記制御手段が、前記第１の音データが表す音素と前記第２の音データが表す音素とを前記対応箇所データによって表されるフレーム単位で比較し、該第１の音データが表わす音素と該第２の音データが表わす音素との差分が閾値を超えるか否かを判断するステップと、
前記制御手段が、前記差分が閾値を超えると判断された音を特定する情報を出力するステップと
を備えることを特徴とする制御方法。
【請求項１１】
発音タイミングが時系列に連なる複数の音素を表す第１の音データを、該各音素の発音タイミングと対応付けて記憶する第１の記憶手段と、音を収音する収音手段から供給される第２の音データを記憶する第２の記憶手段とを備えるコンピュータに、
前記第１の音データと前記第２の音データとを所定時間長のフレーム単位で対応付け、対応付けたフレームを表す対応箇所データを生成する対応箇所検出機能と、
前記第２の音データが表す音素の発音タイミングを、前記第１の音データが表わす音素の発音タイミングと前記対応箇所データとに基づいて特定し、該第１の音データが表わす音素の発音タイミングと該第２の音データが表わす音素の発音タイミングとの差分が閾値を超えるか否かを判断する比較機能と、
前記比較手段によって前記差分が閾値を超えると判断された音を特定する情報を出力する出力機能と
を実現させるプログラム。
【請求項１２】
発音タイミングが時系列に連なる複数の音素を表す第１の音データを、各々の音素の発音タイミングと対応付けて記憶する第１の記憶手段と、音を収音する収音手段から供給される第２の音データを記憶する第２の記憶手段とを備えるコンピュータに、
前記第１の音データと前記第２の音データとを所定時間長のフレーム単位で対応付け、対応付けたフレームを表す対応箇所データを生成する対応箇所検出機能と、
前記第１の音データが表す音素と前記第２の音データが表す音素とを前記対応箇所データによって表されるフレーム単位で比較し、該第１の音データが表わす音素と該第２の音データが表わす音素との差分が閾値を超えるか否かを判断する比較機能と、
前記比較手段によって前記差分が閾値を超えると判断された音を特定する情報を出力する出力機能と
を実現させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、模範となる歌唱（又は演奏）と、練習者の歌唱（又は演奏）との発音タイミングのずれや発音の間違いを練習者に示す技術に関する。
【背景技術】
【０００２】
カラオケ装置は、歌詞テロップを画面に表示するとともに、そのテロップを伴奏に合わせて順番に色変わりさせていく機能を備えている。カラオケ装置は、このような機能により、正しい歌詞を正しいタイミングで発音するように歌唱者に案内することができる。
【０００３】
ところが、歌唱者によっては、上記のような案内があるにも関わらず、伴奏よりも遅いタイミングで発音したり、逆に発音のタイミングが早すぎたり、或いは歌詞の内容そのものを間違ったりする場合がある。このような歌唱者に対しては発音タイミングや歌詞の間違いを速やかに指摘してあげることが望ましいが、これに有効な技術が特許文献１に開示されている。即ち、伴奏を表すＭＩＤＩデータに含まれるノートオンのタイミングと、歌唱者の音声がマイクに収音されたタイミングとを比較し、両者の時間的なずれを検出するというものである。
【特許文献１】特開２００５−１７３２５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
この特許文献１に記載された技術を応用すれば、発音タイミングのずれを歌唱者に指摘することが可能であると考えられる。ところが、この技術は、ノートオンのタイミングと収音タイミングとを単純に比較するだけであり、歌詞を構成する語（音）と歌唱者の音声とを照合するものではない。よって、当然のことながら歌唱した歌詞の間違いを指摘することは無理であるし、発音タイミングのずれを正確に捉えることもできないという問題がある。後者の問題が発生するのは、例えば発音タイミングそのものは伴奏に合っているものの、歌詞を構成するそれぞれの語を１テンポ早く発音したりとか、１テンポ遅く発音したような場合である。
【０００５】
具体的には、図７（ａ）に例示するように、伴奏に従って「すぎさりしひびのゆめを・・・」の「り」という語を発音すべき期間内に、その「り」という語に続けて次の「し」という語を発音してしまい、さらに本来は「し」を発音すべきタイミングで次の「ひ」を発音してしまったような場合である。つまり、特許文献１に記載の技術では、どのような音であってもよいから、とにかく何らかの音が上記「し」の正しいタイミングで発音されている限り、これを正しい発音とみなしてしまうのである。この点に特許文献１の技術を適用した場合の限界がある。さらに、これらの問題は、歌唱を練習する場合に限らず、模範演奏を真似て楽器の演奏を練習する場合であっても同様に発生する。
【０００６】
本発明は上述した背景に鑑みてなされたものであり、その目的は、練習者の歌唱や楽器の演奏に対し、その模範となる歌唱や演奏との発音タイミングのずれや発音の間違いをより正確に示すことにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、本発明は、発音タイミングが時系列に連なる複数の音素を表す第１の音データを、該各音素の発音タイミングと対応付けて記憶する第１の記憶手段と、音を収音する収音手段から供給される第２の音データを記憶する第２の記憶手段と、前記第１の音データと前記第２の音データとを所定時間長のフレーム単位で対応付け、対応付けたフレームを表す対応箇所データを生成する対応箇所検出手段と、前記第２の音データが表す音素の発音タイミングを、前記第１の音データが表わす音素の発音タイミングと前記対応箇所データとに基づいて特定し、該第１の音データが表わす音素の発音タイミングと該第２の音データが表わす音素の発音タイミングとの差分が閾値を超えるか否かを判断する比較手段と、前記比較手段によって前記差分が閾値を超えると判断された音素を特定する情報を出力する出力手段とを備えることを特徴とする評価装置を提供する。
【０００８】
本発明によれば、第１の音データと第２の音データとを所定時間長のフレーム単位で対応付けることで、第１の音データが表す音素と第２の音データが表す音素とを正確に対応付けることができる。よって、発音タイミングのずれをより正確に示すことが可能となる。
【０００９】
また、本発明は、発音タイミングが時系列に連なる複数の音素を表す音データを、該各音素の発音タイミングと対応付けて記憶する第１の記憶手段と、音を収音する収音手段から供給される第２の音データを記憶する第２の記憶手段と、前記第１の音データと前記第２の音データとを所定時間長のフレーム単位で対応付け、対応付けたフレームを表す対応箇所データを生成する対応箇所検出手段と、前記第１の音データが表す音素と前記第２の音データが表す音素とを前記対応箇所データによって表されるフレーム単位で比較し、該第１の音データが表わす音素と該第２の音データが表わす音素との差分が閾値を超えるか否かを判断する比較手段と、前記比較手段によって前記差分が閾値を超えると判断された音素を特定する情報を出力する出力手段とを備えることを特徴とする評価装置を提供する。
【００１０】
本発明によれば、第１の音データと第２の音データとを所定時間長のフレーム単位で対応付けることで、第１の音データが表す音素と第２の音データが表す音素とを正確に対応付けることができる。よって、これらの音の違いをより正確に示すことが可能となる。
【００１１】
また、本発明は、発音タイミングが時系列に連なる複数の音素を表す第１の音データを、該各音素の発音タイミングと対応付けて記憶する第１の記憶手段と、音を収音する収音手段から供給される第２の音データを記憶する第２の記憶手段と、制御手段とを備える評価装置の制御方法であって、前記制御手段が、前記第１の音データと前記第２の音データとを所定時間長のフレーム単位で対応付け、対応付けたフレームを表す対応箇所データを生成するステップと、前記制御手段が、前記第２の音データが表す音素の発音タイミングを、前記第１の音データが表わす音素の発音タイミングと前記対応箇所データとに基づいて特定し、該第１の音データが表わす音素の発音タイミングと該第２の音データが表わす音素の発音タイミングとの差分が閾値を超えるか否かを判断するステップと、前記制御手段が、前記差分が閾値を超えると判断された音を特定する情報を出力するステップとを備えることを特徴とする制御方法を提供する。
【００１２】
また、本発明は、発音タイミングが時系列に連なる複数の音素を表す第１の音データを、該各音素の発音タイミングと対応付けて記憶する第１の記憶手段と、音を収音する収音手段から供給される第２の音データを記憶する第２の記憶手段と、制御手段とを備える評価装置の制御方法であって、前記制御手段が、前記第１の音データと前記第２の音データとを所定時間長のフレーム単位で対応付け、対応付けたフレームを表す対応箇所データを生成するステップと、前記制御手段が、前記第１の音データが表す音素と前記第２の音データが表す音素とを前記対応箇所データによって表されるフレーム単位で比較し、該第１の音データが表わす音素と該第２の音データが表わす音素との差分が閾値を超えるか否かを判断するステップと、前記制御手段が、前記差分が閾値を超えると判断された音を特定する情報を報知するステップとを備えることを特徴とする制御方法を提供する。
【００１３】
さらに、本発明は、コンピュータに対して機能を実現させるプログラムとしての形態も採り得る。なお、本発明において「発音」という用語には、人が歌唱するときに発せられる音声のほか、楽器を演奏することで発せられる演奏音も含むものとする。また、本発明において、各々の「音素」とは、ひとまとまりの音として意識されて発音されるものであり、発音タイミングや発音の間違いを指摘することに意味がある音であればよい。
【発明の効果】
【００１４】
本発明によれば、練習者の歌唱や楽器の演奏に対し、その模範となる歌唱や演奏との発音タイミングのずれや発音の間違いをより正確に示すことができる。
【発明を実施するための最良の形態】
【００１５】
次に、本発明を実施するための最良の形態を説明する。
１．構成
図１は、この発明の一実施形態に係る評価装置としてのカラオケ装置１のハードウェア構成を例示したブロック図である。ＣＰＵ（Central Processing Unit）１１は、ＲＯＭ（Read Only Memory）１２又は記憶部１４に記憶されているコンピュータプログラムを読み出してＲＡＭ（Random Access Memory）１３にロードし、これを実行することにより、カラオケ装置１の各部を制御する。記憶部１４は、例えばハードディスクなどの大容量の記憶手段であり、伴奏データ記憶領域１４ａと、模範音声データ記憶領域１４ｂと、歌詞データ記憶領域１４ｃと、練習者音声データ記憶領域１４ｄを有している。表示部１５は、例えば液晶ディスプレイなどであり、ＣＰＵ１１の制御の下で、カラオケ装置１を操作するためのメニュー画面や、背景画像に歌詞テロップを重ねたカラオケ画面などの各種画面を表示する。操作部１６は、各種のキーを備えており、押下されたキーに対応した信号をＣＰＵ１１へ出力する。マイクロフォン１７は、歌唱者が発音した音声を収音する収音手段である。音声処理部１８は、マイクロフォン１７によって収音された音声（アナログデータ）をデジタルデータに変換してＣＰＵ１１に供給する。スピーカ１９は、音声処理部１８に接続されており、音声処理部１８から出力される音声を放音する。
【００１６】
記憶部１４の伴奏データ記憶領域１４ａには、例えばＭＩＤＩ（Musical Instruments Digital Interface）形式などの伴奏データであって、各曲の伴奏を行う各種楽器の音程（ピッチ）を示す情報が楽曲の進行に伴って記された伴奏データが記憶されている。模範音声データ記憶領域１４ｂには、例えばＷＡＶＥ形式やＭＰ３（MPEG Audio Layer-3）形式などの音声データであって、伴奏データによって表わされる伴奏に沿って歌唱者が発音した音声（以下、模範音声という）を表す音声データ（以下、模範音声データ）が記憶されている。また、歌詞データ記憶領域１４ｃには、模範音声データと対応する歌詞を示す歌詞データが記憶されている。
【００１７】
ここで、図２は、模範音声データと歌詞データとの対応関係を説明する図である。図示のように、歌詞データは、歌詞を構成するそれぞれの語（音素）と、これらの音素を発音すべき時間を表す発音タイミングとを含んでいる。そして、模範音声データと、歌詞を構成するそれぞれの語（音素）と、これらの各音素の発音タイミングとが互いに対応付けられている。図２に示す例では、「すぎさりしひびのゆめを・・」の「す」は発音タイミングＴ1で発音を開始し、「ぎ」は発音タイミングＴ２で発音を開始し、「さ」は発音タイミングＴ３で発音を開始し・・・（以下同様）ということを示している。この発音タイミングは、伴奏データに基づく伴奏が開始された時点からの経過時間によって表されている。
【００１８】
再び図１の説明に戻る。
練習者音声データ記憶領域１４ｄには、マイクロフォン１７から音声処理部１８を経てＡ／Ｄ変換された音声データが、例えばＷＡＶＥ形式やＭＰ３（MPEG Audio Layer-3）形式で時系列に記憶される。この音声データは、練習者の音声（以下、練習者音声）を表す音声データであるから、以下では、練習者音声データという。ＣＰＵ１１は、この練習者音声データと前述した模範音声データとを比較することで、発音タイミングや発音内容の相違箇所を検出し、その相違箇所を表示部１５に表示するなどして練習者に報知する。練習者は、その報知内容を参照することで、自身の発音タイミングがずれている箇所や発音が間違っている箇所を認識することができる。なお、以下の説明においては、説明の便宜上、「模範音声データ」と「練習者音声データ」とを各々区別する必要がない場合には、これらを「音声データ」と総称する。
【００１９】
次に、図３に示すブロック図を参照しながら、カラオケ装置１のソフトウェア構成について説明する。図３に示した基礎分析部１１１、対応箇所検出部１１２、発音内容比較部１１３、発音タイミング比較部１１４及び報知部１１５は、ＣＰＵ１１がＲＯＭ１２又は記憶部１４に記憶されたコンピュータプログラムを実行することによって実現される。なお、図中の矢印は、データの流れを概略的に示したものである。図３において、基礎分析部１１１は、模範音声データ記憶領域１４ｂから読み出された模範音声データと、練習者音声データ記憶領域１４ｄから読み出された練習者音声データとを、それぞれ所定時間長のフレーム単位に分離し、その各々に対してＦＦＴ（Fast Fourier Transform）を施して、それぞれの音声データのスペクトルを算出する。
【００２０】
対応箇所検出部１１２は、基礎分析部１１１によって算出された各音声データのスペクトルに基づいて、模範音声データに含まれる音素（語）と練習者音声データに含まれる音素（語）との対応関係（対応箇所）を求める。これら練習者音声及び模範音声の対応箇所は、対応箇所検出部１１２から発音内容比較部１１３及び発音タイミング比較部１１４に供給される。発音内容比較部１１３は、互いに対応する模範音声の発音内容と練習者音声の発音内容とを比較し、両者の相違箇所を検出する処理を行う。発音タイミング比較部１１４は、互いに対応する模範音声の発音タイミングと練習者音声の発音タイミングとを比較して、両者の相違箇所を検出する処理を行う。報知部１１５は、発音内容比較部１１３及び発音タイミング比較部１１４によって検出された相違箇所を特定する情報や各種メッセージを生成し、これらを表示部１５に表示するなどして、練習者に報知する。
【００２１】
ところで、模範音声と練習者音声とは、前述の図７（ａ）に示したように、時間的にずれている可能性がある。そこで、対応箇所検出部１１２は、両者の音声データの時間軸を伸縮させて時間正規化（ＤＴＷ；Dynamic Time Warping）を行う必要がある。本実施形態ではこのＤＴＷを行うための手法としてＤＰ（Dynamic Programming：動的計画法）マッチングを用いる。具体的には以下のような処理となる。
【００２２】
対応箇所検出部１１２は、図４に示すような座標平面（以下、ＤＰプレーンという）をＲＡＭ１３に形成する。このＤＰプレーンの縦軸は、模範音声データの各フレームのスペクトルの絶対値の対数に逆フーリエ変換をかけて得られるパラメータに対応しており、横軸は、練習者音声データの各フレームから得たスペクトルの絶対値の対数に逆フーリエ変換をかけて得られるパラメータ（ケプストラム）に対応している。図４において、ａ１、ａ２、ａ３・・・ａｎは、模範音声データの各フレームを時間軸に従って並べたものであり、ｂ１、ｂ２、ｂ３・・・ｂｎは、練習者音声データの各フレームを時間軸に従って並べたものである。縦軸のａ１、ａ２、ａ３・・・ａｎの間隔と横軸のｂ１、ｂ２、ｂ３・・・ｂｎの間隔は、いずれもフレームの時間長と対応している。このＤＰプレーンにおける各格子点の各々には、ａ１、ａ２、ａ３・・・の各パラメータと、ｂ１、ｂ２、ｂ３・・・の各パラメータのユークリッド距離を夫々示す値であるＤＰマッチングスコアが対応付けられている。例えば、ａ１とｂ１とにより位置決めされる格子点には、模範音声データの一連のフレームのうち最初のフレームから得たパラメータと練習者音声データの一連のフレームのうち最初のフレームから得たパラメータのユークリッド距離を示す値が対応付けられることになる。対応箇所検出部１１２は、このような構造を成すＤＰプレーンを形成した後、ａ１とｂ１とにより位置決めされる格子点（始端）からａｎとｂｎとにより位置決めされる格子点（終端）に至る全経路を探索し、探索した各経路毎に、その始端から終端までの間に辿る各格子点のＤＰマッチングスコアを累算して行き、最小の累算値を求める。このＤＰマッチングスコアの累算値が最も小さくなる経路は、練習者音声データの各フレームの時間軸を模範音声データの時間軸に合わせて伸縮する際における伸縮の尺度として参酌される。
【００２３】
そして、対応箇所検出部１１２は、ＤＰマッチングスコアの累算値が最小となる経路をＤＰプレーン上から特定し、特定した経路の内容に応じて練習者音声データの時間軸を伸縮する処理であるアライメント処理を行う。具体的には、ＤＰプレーン上から特定された経路上の各格子点のＤＰマッチングスコアが時間軸上の位置を同じくするフレームから得たパラメータのユークリッド距離を表わすものとなるように、練習者音声データの各フレームのタイムスタンプの内容を書き換えた上で、時間軸上の位置を同じくする各フレームを組として順次対応付けていく。例えば、図４に示すＤＰプレーン上に記された経路においては、ａ１とｂ１により位置決めされる始点からその右上のａ２とｂ２により位置決めされる格子点に進んでいることが分かる。この場合、ａ２とｂ２のフレームの時間軸上の位置は当初から同じであるので、ｂ２のフレームのタイムスタンプの内容を書き換える必要はない。更に、この経路においては、ａ２とｂ２により位置決めされる格子点からその右のａ２とｂ３により位置決めされる格子点に進んでいることが分かる。この場合、ｂ２のフレームだけでなくｂ３のフレームもａ２のフレームと時間軸上の位置を同じくする必要があるので、ｂ３のフレームと対を成していたタイムスタンプをフレーム一つ分だけ早いものと置き換える。この結果、ａ２のフレームとｂ２及びｂ３のフレームが時間軸上の位置を同じくするフレームの組として対応付けられることになる。このようなタイムスタンプの置き換えとフレームの対応付けがｂ１からｂｎに至る全フレーム区間について行われる。これにより、例えば図５（ａ）に示すように、練習者音声の発音タイミングが模範音声の発音タイミングよりも遅れていたとしても、図５（ｂ）に示すように、一方の音データの時間軸を他方の音データの時間軸に合わせて伸縮し、その伸縮によって合わせられた時間軸上の位置を同じくするフレーム（音素）どうしを対応付けることができる。
以上がＤＰマッチングの仕組みである。
【００２４】
２．動作
次に、図６に示すフローチャートを参照しつつ、カラオケ装置１の動作を説明する。
練習者は、カラオケ装置１の操作部１６を操作して歌唱したい曲を選定し、伴奏データの再生を指示する。ＣＰＵ１１は、この指示に応じて図６に示す処理を開始する。ＣＰＵ１１は、まず、指定された曲の伴奏データを伴奏データ記憶領域１４ａから読み出し、音声処理部１８に供給する（ステップＳ１）。音声処理部１８は、供給された伴奏データをアナログ音声信号に変換してスピーカ１９に供給して放音させる。このとき、ＣＰＵ１１は表示部１５を制御して、歌詞データ記憶領域１４ｃから読み出した歌詞を表示するとともに、「伴奏に合わせて歌唱してください」というような歌唱を促すメッセージを表示し、さらに、その歌詞を伴奏の進行に合わせて順番に色変わりさせるようにしてもよい。練習者は、スピーカ１９から放音される伴奏に合わせて歌唱を行う。このとき、練習者の音声はマイクロフォン１７によって収音されて音声信号に変換され、音声処理部１８へと供給される。そして、音声処理部１８によってＡ／Ｄ変換された練習者音声データは、演奏開始から発音タイミングまでの経過時間を表す情報と共に、記憶部１４の練習者音声データ記憶領域１４ｄに時系列に記憶されていく（ステップＳ２）。
【００２５】
伴奏データの再生が終了すると（ステップＳ３；ＹＥＳ）、ＣＰＵ１１は、前述した基礎分析部１１１の処理、即ち模範音声データ記憶領域１４ｂから読み出した模範音声データと、練習者音声データ記憶領域１４ｄから読み出した練習者音声データとを、それぞれ所定時間長のフレーム単位に分離し、その各々に対してＦＦＴを施して各音声データのスペクトルを算出する（ステップＳ４）。次に、ＣＰＵ１１は、前述した対応箇所検出部１１２の処理、つまりＤＰマッチングによって両者の音声データの時間軸を合わせ、合わせられた時間軸上の位置を同じくするフレームどうしを対応付け、対応付けたフレームを表す対応箇所データを生成する（ステップＳ５）。
【００２６】
続けて、ＣＰＵ１１は、前述した発音タイミング比較部１１４の処理、つまり、互いに対応する模範音声の発音タイミングと練習者音声の発音タイミングとを比較し、発音タイミングが相違する箇所を検出する処理を行う（ステップＳ６）。具体的には、ＣＰＵ１１は、練習者音声データと、ステップＳ５の処理によって得られた対応箇所データとに基づいて、練習者音声の発音タイミングを特定する。そのため、ＣＰＵ１１はまず、図５（ｂ）に示すように同一の時間軸における模範音声と練習者音声の対応関係を参照して両者の対応箇所を特定する。両者の対応関係が特定されると、ＣＰＵ１１は、図５（ａ）に示すような練習者音声の時間軸上において、ある音素（例えば「す」）とその次に発音された音素（例えば「ぎ」）との境界（切れ目）を特定することができる。練習者音声データは、前述したように、演奏開始から発音タイミングまでの経過時間を表す情報と共に記憶されているから、ＣＰＵ１１は、音と音の境界に相当する経過時間を特定することができる。この経過時間が、練習者音声に含まれる各音の発音タイミングとなる。
【００２７】
次に、ＣＰＵ１１は、その練習者音声に対応付けられた模範音声データの音の発音タイミングを歌詞データ記憶領域１４ｃから読み出す。次いで、ＣＰＵ１１は、練習者音声の発音タイミングと、その練習者音声に対応する模範音声の発音タイミングとの差分を算出する。そして、ＣＰＵ１１は、その差分が予め決められた閾値を超えるか否かを判断する。このときの閾値は、発音のタイミングがずれていると判断される最小の時間間隔であり、記憶部１４に予め記憶されている。この差分が閾値を超えると判断された箇所の音声（音素）が、模範音声の発音タイミングと練習者音声の発音タイミングとの相違箇所となる。
【００２８】
次に、ＣＰＵ１１は、前述した発音内容比較部１１３の処理、つまり、互いに対応する模範音声と練習者音声とを比較し、これら音声そのものの相違箇所を検出する処理を行う（ステップＳ７）。具体的にはまず、ＣＰＵ１１は、練習者音声データが表す音声と、その音声に対応付けられた模範音声データが表す音声とを比較し、両者のスペクトルの差分を算出する。異なる人が同じ語を発音した場合、多少の個人差はあるものの、その音声波形はおおよそ類似したものとなる。よって、スペクトルが類似しているか否かによって、模範音声と練習者音声とが相違しているか否かを判断することができる。更に正確な方法としては、ステップＳ４で求めた音声データのスペクトルに対してフォルマント分析を行うことによって、模範音声と練習者音声の相違箇所を検出する方法がある。このフォルマントとは、特定周波数に偏ったスペクトルの山の部分のことであり、例え声質が異なっていても、同じ語を発音するとその語（音声）に固有のフォルマントが出現する。よって、このフォルマントの出現状態を解析すれば発音の内容を識別することができる。ＣＰＵ１１は、このように模範音声と練習者音声との間で、そのスペクトルやフォルマントの差分をとり、その差分が閾値を超える場合には、模範音声の発音内容と練習者音声の発音内容の相違箇所と判断する。なお、このとき用いる閾値としては、人が同じ語を発音したものと認められる程度の差分の上限値を予め決めておき、これを閾値として記憶部１４に記憶させておけばよい。
【００２９】
次に、ＣＰＵ１１は、ステップＳ６，Ｓ７における比較によって相違箇所が検出されたか否かを判断する（ステップＳ８）。相違箇所が検出されない場合には（ステップＳ８；ＮＯ）、ＣＰＵ１１は、「あなたはうまく歌えています」などといったメッセージを表示部１５に表示して処理を終了する。一方、相違箇所が検出された場合には（ステップＳ８；ＹＥＳ）、ＣＰＵ１１は、その相違箇所に相当する練習者音声（音素）又は模範音声（音素）を特定する情報を生成し、それを表示部１５によって表示させるなどの報知処理を行う（ステップＳ９）。具体的には、ＣＰＵ１１は、検出した相違箇所に対応する歌詞にアンダーラインを施して表示したり、その歌詞（文字）の色や太さをその他の文字の表示態様と異ならせて表示する。また、ＣＰＵ１１は、発音タイミングがどのようにずれているとか、発音がどのように間違っているかといったメッセージを併せて表示する。
【００３０】
ここで、ステップＳ６，Ｓ７の処理によって検出される相違箇所には、図７の（ａ）〜（ｃ）に示すような３つの態様がある。
まず１つ目の態様は、図７の（ａ）に示すように、「すぎさりしひびのゆめを・・・」という歌詞のうち「しひびのゆめ」という一連の歌詞が、模範音声よりも早いタイミングで発音されている場合である。ＣＰＵ１１は、このように練習者音声の発音タイミングが所定数以上（ここでは２つの語以上）連続して模範音声の発音タイミングよりもずれている場合には、練習者の歌唱は「歌詞ずれ」であると判断する。この場合、ＣＰＵ１１は、図８（ａ）に示すように、「すぎさりしひびのゆめを・・・」という歌詞のうち「しひびのゆめ」にアンダーラインを施して表示するとともに、模範音声ないし伴奏よりも早いタイミングで発音される歌詞ずれが発生していることを練習者に報知するためのメッセージを表示する。
【００３１】
次に、２つ目の態様は、図７の（ｂ）に示すように、「すぎさりしひびのゆめを・・・」という練習者音声のうち「の」だけが模範音声よりも早いタイミングで発音されている場合である。ＣＰＵ１１は、このように練習者音声の発音タイミングが所定数未満（ここでは２つの語未満）の模範音声の発音タイミングよりもずれている場合には、練習者の歌唱が「タイミングずれ」であると判断する。この場合、ＣＰＵ１１は、図８（ｂ）に示すように、「すぎさりしひびのゆめを・・・」という歌詞のうち「の」だけにアンダーラインを施して表示するとともに、模範音声ないし伴奏よりも早いタイミングで発音されていることを練習者に報知するためのメッセージを表示する。
このように、ＣＰＵ１１は、発音タイミングがずれている場合には、そのずれている音素（語）が所定数以上連続するか否かを判断し、所定数以上連続すると判断した場合と所定数以上連続しないと判断された場合とで、それぞれ異なるメッセージを表示部１５に表示する。
【００３２】
そして、３つ目の態様は、図７の（ｃ）に示すように、「すぎさりしひびのゆめを・・・」の「すぎさりし」という歌詞が「すぎさった」というように間違えて歌唱された場合である。ＣＰＵ１１は、このように発音内容が異なっている場合には、練習者の歌唱が「歌詞の間違い」であると判断する。この場合、ＣＰＵ１１は、図８（ｃ）に示すように、「すぎさりしひびのゆめを・・・」という正しい歌詞と、「すぎさったひびのゆめを・・・」という練習者の間違った発音とを並列に表示し、さらに、練習者の間違った発音「った」にアンダーラインを施して表示するとともに、歌詞に間違いがあることを練習者に報知するためのメッセージを表示部１５に表示する。
【００３３】
ところで、ＣＰＵ１１は、図８（ａ）〜（ｃ）に示すように、「もう１回歌い直しますか？  Ｙｅｓ／Ｎｏ」というメッセージも表示部１５に表示する。ここで、練習者が操作部１６を操作して「Ｙｅｓ」を選択すると、ＣＰＵ１１は歌唱の再練習が指示されたと判断する（ステップＳ１０；Ｙｅｓ）。そして、ＣＰＵ１１は、発音タイミング又は発音内容の相違箇所を中心として前後の所定範囲にわたる歌詞データ（この場合「すぎさりしひびのゆめを」という歌詞）と、その歌詞データに対応する伴奏データとを、歌詞データ記憶領域１４ｃ及び伴奏データ記憶領域１４ａから読み出し、これらを音声処理部１８に供給して再生させる（ステップＳ１１）。このとき、ＣＰＵ１１は表示部１５を制御して、歌詞データ記憶領域１４ｃから読み出した歌詞を表示し、さらにその歌詞を伴奏の進行に合わせて順番に色変わりさせる。練習者はこの伴奏に合わせて、表示部１５に表示された歌詞を歌唱する。
【００３４】
この後、ＣＰＵ１１の処理は前述したステップＳ２に戻る。つまり、練習者の音声がマイクロフォン１７によって収音されて音声信号に変換され、音声処理部１８へと供給される。そして、音声処理部１８によってＡ／Ｄ変換された練習者音声データは、記憶部１４の練習者音声データ記憶領域１４ｄに時系列に記憶されていく（ステップＳ２）。以降、この記憶された練習者音声データに対して上述したステップＳ３〜Ｓ１１の処理が繰り返される。これにより、練習者は自らが納得するまで、同一箇所の歌詞を繰り返し練習することができる。そして、図８（ａ）〜（ｃ）に示した画面で練習者が「Ｎｏ」を選択すると（ステップＳ１０；Ｎｏ）、ＣＰＵ１１の処理は終了する。
【００３５】
このように本実施形態においては、模範音声データと練習者音声データの時間軸を合わせたうえで、その時間軸上の位置を同じくする音どうしを対応付けて両者を比較し、発音タイミングや発音内容の相違箇所を表示する。よって、練習者は、自らの歌唱に発音タイミングのずれや発音の間違いがあることを明確に意識することができると共に、その相違箇所や相違内容を視覚的に把握することができる。
【００３６】
３．変形例
上述した実施形態を次のように変形してもよい。
（１）上述した実施形態においては、練習者の歌唱を評価する場合を例に挙げて説明したが、これに限らず、練習者の楽器演奏を評価するようにしてもよい。この場合、伴奏データ記憶領域１４ａには、練習したい楽器（例えばギター）以外の楽器（例えばベースやドラム）の演奏データが記憶されており、模範音声データ記憶領域１４ｂには、模範となる模範演奏データが記憶されており、歌詞データ記憶領域１４ｃには、演奏音の音程と発音タイミングとが対応付けられて記憶されており、練習者音声データ記憶領域１４ｄには、練習者の演奏データが記憶されている。ＣＰＵ１１は、これらのデータに基づき、上記と同様の処理を経て模範演奏と練習演奏との相違箇所を検出し、その相違箇所を特定する情報を報知する。このように本発明は歌唱や演奏を含み得るため、本発明における「発音」という用語には、人が歌唱するときに発せられる音声のほか、楽器を演奏することで発せられる演奏音も含むものとする。また、本発明において、「音素」とは、歌唱や演奏のいずれの場合であっても、ひとまとまりの音として意識されて発音されるものであり、発音タイミングや発音の間違いを指摘することに意味があるものであればよい。
【００３７】
（２）図２に示した歌詞データでは、それぞれの音声の発音を開始すべきタイミングを「発音タイミング」として考えていた。なぜなら、発音タイミングのずれは、大抵の場合、発音を開始すべきタイミングの影響が大きいからである。ただし、これに限らず、音声の発音を終了するタイミングも「発音タイミング」という概念に含めるようにしてもよい。例えば図２において冒頭の「す」という音声の発音を開始するタイミングＴ1と、図示はしていないがその「す」という音声の発音を終了するタイミング（タイミングＴ1よりは遅く、タイミングＴ２よりは早いタイミング）とを、それぞれ模範音声と練習者音声との間で比較するようにしてもよい。このようにすれば、発音の開始から終了に至るまでの微妙なずれまでをも評価することが可能となる。
【００３８】
（３）ＣＰＵ１１が発音タイミングの差分が閾値を超えると判断された回数を累算しておき、その累算結果に応じたメッセージを表示部１５に表示するようにしてもよい。発音タイミングの差分が閾値を超えると判断された回数が多いということは、それだけ発音タイミングのずれが頻繁に発生していることを意味しているから、ＣＰＵ１１が例えば「歌詞ずれがとても多いです。もっとしっかり練習しましょう。」とか、「歌詞ずれがずいぶん少なくなりましたね。その調子です。」などというようなメッセージを表示すると、練習者の練習の励みになる。
これは発音タイミングに限らず、発音内容であっても同様であり、ＣＰＵ１１は、発音内容の差分が閾値を超えると判断された回数を累算しておき、その累算結果に応じたメッセージを表示部１５に表示するようにしてもよい。
【００３９】
（４）実施形態では、練習者の歌唱が終わってから、図８に示すような評価結果を表示していた。そうではなくて、例えば練習者の過去の歌唱における発音タイミングや発音内容の相違箇所を履歴として記憶しておき、練習者のカラオケ歌唱（伴奏データの再生）に先立って又はそのカラオケ歌唱（伴奏データの再生）に同期して、発音タイミングや発音内容の相違しやすい箇所を表示するようにしてもよい。具体的には、ＣＰＵ１１は、ステップＳ６，Ｓ７において差分が閾値を超えると判断された音素を、歌詞データ記憶領域１４ｃに記憶されている歌詞データに対応付けて記憶しておく。伴奏データ記憶領域１４ａと歌詞データ記憶領域１４ｃにおいては歌詞データと伴奏データとが対応付けられて記憶されている。よって、ＣＰＵ１１は、練習者によって伴奏データの再生（カラオケ歌唱）が指示されると、その再生に先立って又はその再生に同期して、再生する伴奏データに対応する歌詞データに対応付けて記憶されている音素（過去にステップＳ６，Ｓ７において差分が閾値を超えると判断された音素）を特定する情報を報知する。再生に先立って報知する場合には、ＣＰＵ１１は例えば「あなたは、冒頭の「すぎさりしひびのゆめを・・・」の「しひびのゆめ」の発音タイミングが遅れがちです。注意しましょう。」といったメッセージを表示したり、再生に同期して報知する場合には、ＣＰＵ１１は例えば「すぎさりしひびのゆめを・・・」という歌詞の「しひびのゆめ」の部分を強調表示するなどすればよい。これは、発音タイミングに限らず、発音内容についても同様である。このようにすれば、練習者は、歌唱する前に（又は歌唱している最中に）、発音タイミングや発音内容を間違えやすい部分を視覚的に把握することができる。
【００４０】
（５）報知部１１６による報知の形態は、表示に限らず、音素を特定する音声メッセージを出力するような形態であってもよい。また、音素を特定する情報を電子メール形式で練習者のメール端末に送信するという形態であってもよい。また、音素を特定する情報を記憶媒体に出力して記憶させるようにしてもよく、この場合、練習者はコンピュータを用いてこの記憶媒体から情報を読み出させることで、それを参照することができる。要は、練習者に対して何らかの手段でメッセージ乃至情報を伝えられるように、音素を特定する情報を出力するものであればよい。
【００４１】
（６）実施形態では、ハードディスク等の記憶部１４に練習者音声データを記憶するようにしていたが、歌唱の評価を終えた後に練習者音声をすぐに破棄する場合には、練習者音声データをＲＡＭ１３に記憶するようにしてもよい。
【００４２】
（７）実施形態では、練習者音声データを記憶する際には、歌詞を表示し、さらに伴奏データを再生しながら練習者に歌唱させる、所謂カラオケ歌唱を行うようにしていたが、これは必ずしも必要ではない。つまり、練習者が歌詞の表示や伴奏データの再生が無いままで歌唱し、それを録音して模範音声と比較するようにしてもよい。歌唱能力が相当に高い練習者であっても、歌詞の表示や伴奏が無い状態で発音タイミングや歌詞を間違えずに歌唱することは容易ではないから、練習者の歌唱能力をより厳密に評価することが可能となる。
【００４３】
（８）実施形態では、ＣＰＵ１１が図６に示す処理を実行するたびに、模範音声データに対して周波数分析を行っていたが（ステップＳ４）、これに限らず、模範音声データに対して予め周波数分析を行った結果を記憶部１４に記憶しておいてもよいし、一度でも過去に周波数分析を行ったことがあれば、その結果を記憶部１４に記憶しておいてもよい。なお、模範音声データや練習者音声データはＷＡＶＥ形式やＭＰ３形式のデータとしたが、データの形式はこれに限定されるものではなく、音声を示すデータであればどのような形式のデータであってもよい。
【００４４】
（９）さらに、実施形態においては、模範音声データを記憶部１４に記憶させて、カラオケ装置１のＣＰＵ１１が記憶部１４から模範音声データを読み出すようにしたが、これに代えて、通信ネットワークを介して音声データを受信するようにしてもよい。
【００４５】
（１０）実施形態では、カラオケ装置１が、図３に示した機能の全てを実現するようになっていた。これに対し、通信ネットワークで接続された２以上の装置が上記機能を分担するようにし、それら複数の装置を備えるシステムが同実施形態のカラオケ装置１を実現するようにしてもよい。例えば、マイクロフォンやスピーカ、表示装置及び入力装置等を備え、報知部１１５を実現するコンピュータ装置と、基礎分析部１１１、対応箇所検出部１１２，発音内容比較部１１３及び発音タイミング比較部１１４を実現するサーバ装置とが通信ネットワークで接続されたシステムとして構成されていてもよい。この場合は、コンピュータ装置が、マイクロフォンから入力された音声を音声データに変換してサーバ装置に送信し、サーバ装置が、受信した音声データと模範音声データ及び歌詞データとの比較処理を行い、その比較結果をコンピュータ装置に送信するようにすればよい。
【００４６】
（１１）上述した実施形態における評価装置としてのカラオケ装置１のＣＰＵ１１によって実行されるプログラムは、磁気テープ、磁気ディスク、フロッピー（登録商標）ディスク、光記録媒体、光磁気記録媒体、ＣＤ（Compact Disk）−ＲＯＭ、ＤＶＤ（Digital Versatile Disk）、ＲＡＭなどの記録媒体に記憶した状態で提供し得る。また、インターネットのようなネットワーク経由でカラオケ装置１にダウンロードさせることも可能である。
【図面の簡単な説明】
【００４７】
【図１】カラオケ装置のハードウェア構成の一例を示すブロック図である。
【図２】模範音声データ及び歌詞データの内容の一例を示す図である。
【図３】カラオケ装置のソフトウェア構造の一例を示すブロック図である。
【図４】ＤＰマッチングを示す図である。
【図５】ＤＰマッチングにおいて時間軸の伸縮を示す図である。
【図６】カラオケ装置のＣＰＵが行う処理の流れを示すフローチャートである。
【図７】発音タイミング及び発音内容が相違する際の各種態様を説明する図である。
【図８】カラオケ装置において表示される画面の一例を示す図である。
【符号の説明】
【００４８】
１…カラオケ装置、１１…ＣＰＵ、１２…ＲＯＭ、１３…ＲＡＭ、１４…記憶部、１５……表示部、１６…操作部、１７…マイクロフォン、１８…音声処理部、１９…スピーカ、１１１…基礎分析部、１１２…対応箇所検出部、１１３…発音内容比較部、１１４…発音タイミング比較部、１１５…報知部。
【図１】
2007233077.tif 000003
【図２】
2007233077.tif 000004
【図３】
2007233077.tif 000005
【図４】
2007233077.tif 000006
【図５】
2007233077.tif 000007
【図６】
2007233077.tif 000008
【図７】
2007233077.tif 000009
【図８】
2007233077.tif 000010