説明

ビブラート検出方法、歌唱訓練プログラム及びカラオケ装置

【課題】歌唱力評価に適した信頼性の高いビブラート検出方法を提供すること。また、それらを応用した歌唱訓練プログラム及び人間の主観と相関の強い得点を算出できる歌唱力評価機能を持つカラオケ装置を提供すること。
【解決手段】
入力音声信号よりピッチ変化量Δfを算出する。周期性算出モジュール143Aは複数フレーム分のピッチ変化量Δfに対して自己相関分析を行いビブラート検出を行う。ピッチ変化量Δfに対し自己相関分析を用いることによりノイズや外乱に強いビブラート検出が可能となる。正位相・逆位相合成モジュール143Bは、自己相関関数より算出された正位相の相関係数・逆位相の相関係数を合成することにより、さらに信頼性の高いビブラート検出が可能となる。このようにして検出したビブラート情報を歌唱訓練プログラムやカラオケ装置に利用する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ビブラート検出方法、歌唱訓練プログラム及びカラオケ装置に関する。
【背景技術】
【0002】
現在市販されている殆ど全てのカラオケ装置には、カラオケ採点機能が付いている。従来のカラオケ採点は、マイクから入力された歌唱者の歌声から抽出した音程(ピッチ)とガイドメロディの音程を比較して、その一致度に基づき得点を算出するというものである。
【0003】
ガイドメロディーと歌唱者の音程(ピッチ)を比較して音程の採点を行うカラオケ採点法では、歌唱者が"ビブラート歌唱"を行った場合、得点が著しく低下する。無表情に直線的な音程で歌った場合の得点が高くなり、人間の主観と異なった採点結果となる。ビブラートとは、音程を上下に震わせて音に表情をつける技術で、上手な歌唱者はビブラートを使うことが多い。人間の主観に近い採点アルゴリズムを作るためにはビブラート検出・加点機能が必要である。この問題について顧みた結果、特許文献1〜特許文献3のビブラート検出機能・加点機能を備えたカラオケ採点装置が発明されている。これらの文献には、ビブラートは正弦波的な音程変化をすることを利用してビブラート判定を行うという概念・検出方法・ビブラート加点方法が記載されている。
【特許文献1】特開2004−102146号公報
【特許文献2】特開2004−138634号公報
【特許文献3】特開2005−107087号公報
【0004】
特許文献1には、歌声データから音程変化を算出し、音程変化波形のピーク値、半値幅、繰り返し周期などを基準としてビブラートか否かの判定を行うことが記載されている。特許文献2には、歌声の音程とガイドメロディの差分をとり、その差分が正負反転するタイミングなどから音高波形の1周期を推定し、それを基にしてビブラート判定を行うことが記載されている。特許文献3には、歌唱ピッチデータの振幅の中央をゼロ点として、ゼロクロス点の間隔から周期を求めている。その周期をもとにビブラート判定を行うことが記載されている。
【0005】
しかし、これらの文献に記載されているビブラート検出方法には以下の問題がある。特許文献1〜特許文献3に示されるビブラート検出法は、ビブラート周期の判定基準として、歌唱者の音程ピッチまたはピッチの差分が一定時間内にピークをとった回数(特許文献1参照)や、正負反転した回数(特許文献2及び特許文献3参照)などの尺度を用いてビブラート判定を行っているが、これらの単純な尺度では、例えば入力音声信号に高調波ノイズなどの外乱が侵入し、ピッチ抽出誤りが発生した場合、歌唱者がビブラートをかけていない部分でも、ビブラートをかけていると判定してしまう危険がある。特にカラオケ装置は、AMP・モニター・スピーカー・電源コードなどが密集したカラオケBOXなどに設置されるため、これらの単純な評価尺度を用いたビブラート検出法ではビブラート検出回路が上手く動作せず採点結果に悪影響を与える問題がある。人間の主観評価と相関の強い採点ができるカラオケ採点装置を作るためには、より信頼性の高いビブラート検出方法が必要となる。
【発明の開示】
【発明が解決しようとする課題】
【0006】
本発明は上記問題を解決するためになされたものであり、歌唱力採点に適した信頼性の高いビブラート検出方法、それらを応用した歌唱訓練プログラム及び人間の主観と相関の強い得点を算出できる歌唱力評価機能を持つカラオケ装置を提供する。
【課題を解決するための手段】
【0007】
上記目的を達成するために、本発明の請求項1に記載のビブラート検出方法は、コンピュータに、音声信号入力手段より入力された音声信号からピッチを抽出させるピッチ抽出ステップと、当該ピッチ抽出ステップを実行させて得られたピッチをピッチ記憶手段に順次記憶させるピッチ記憶ステップと、前記ピッチ記憶手段に記憶された複数のピッチを読み出し、読み出された複数のピッチにより構成される一定区間長のフレームに対して自己相関分析または相互相関分析を行うことで相関関数を算出させる音程相関関数算出ステップと、当該音程相関関数算出ステップを実行して得られた相関関数を音程相関関数記憶手段に記憶させる音程相関関数記憶ステップとを実行させ、前記音程相関関数記憶手段から読み出された相関関数の特性を用いて入力音声中のビブラート区間を検出させることを特徴とする。
【0008】
また、本発明の請求項2に記載のビブラート検出方法は、コンピュータに、音声信号入力手段より入力された音声信号から音程変化量を抽出させる音程変化量抽出ステップと、当該音程変化量抽出ステップを実行させて得られた音程変化量を音程変化量記憶手段に順次記憶させる音程変化量記憶ステップと、前記音程変化量記憶手段より複数の音程変化量を読み出し、読み出された複数の音程変化量により構成される一定区間長のフレームに対して自己相関分析または相互相関分析を行うことで相関関数を算出させる音程相関関数算出ステップと、当該音程相関関数算出ステップを実行して得られた相関関数を音程相関関数記憶手段に記憶させる音程相関関数記憶ステップとを実行させ、前記音程相関関数記憶手段から読み出された相関関数の特性を用いて入力音声中のビブラート区間を検出させることを特徴とする。
【0009】
また、本発明の請求項3に記載のビブラート検出方法は、請求項2に記載の発明の構成に加え、前記音程変化量抽出ステップとして、前記音声信号入力手段より入力された音声信号からピッチを抽出させるピッチ抽出ステップと、当該ピッチ抽出ステップを実行して得られたピッチをピッチ記憶手段に記憶させるピッチ記憶ステップを実行させ、前記ピッチ記憶手段から読み出された2つ以上のピッチの差分をとることにより音程変化量を算出させることを特徴とする。
【0010】
また、本発明の請求項4に記載のビブラート検出方法は、請求項1乃至請求項3の何れかに記載のビブラート検出方法において、前記音程相関関数記憶手段より読み出された相関関数の特性として相関関数を構成する相関係数の一部(正位相の相関係数)と、当該相関係数に対する逆位相の相関係数を利用し、前記正位相の相関係数と前記逆位相の相関係数を用いてビブラート検出を行うことを特徴とする。
【0011】
また、本発明の請求項5に記載のビブラート検出方法は、請求項4に記載のビブラート検出方法において、前記正位相の相関係数と前記逆位相の相関係数を合成した相関係数を用いてビブラート検出を行うことを特徴とする。
【0012】
また、本発明の請求項6に記載のビブラート検出方法は、請求項1乃至請求項5の何れかに記載のビブラート検出方法において、前記音程相関関数記憶手段より読み出された相関関数を構成する相関係数の一部が一定しきい値を超えたときに、ビブラートと判定することを特徴とする。
【0013】
また、本発明の請求項7に記載のビブラート検出方法は、請求項1乃至請求項6の何れかに記載のビブラート検出方法において、前記相関関数により算出される相関の強さをビブラートの美しさとして算出することを特徴とする。
【0014】
また、本発明の請求項8に記載の歌唱者が歌唱訓練を行うことを補助する歌唱訓練補助をコンピュータに実行させる歌唱訓練プログラムは、音声信号入力手段より入力された音声信号からピッチを抽出するピッチ抽出ステップと、当該ピッチ抽出ステップを実行して得られたピッチをピッチ記憶手段に順次記憶するピッチ記憶ステップと、前記ピッチ記憶手段に記憶された複数のピッチを読み出し、読み出された複数のピッチにより構成される一定区間長のフレームに対して自己相関分析または相互相関分析を行うことで相関関数を算出する音程相関関数算出ステップと、当該音程相関関数算出ステップを実行して得られた相関関数を音程相関関数記憶手段に記憶する音程相関関数記憶ステップと、前記音程相関関数記憶手段より読み出された相関関数の特性を用いて入力音声中のビブラート情報を抽出するビブラート検出ステップと、当該ビブラート検出ステップを実行して得られたビブラート情報を表示手段に表示するビブラート表示ステップを備え、歌唱者の歌声から抽出したビブラート情報を確認できるようにしたことを特徴とする。
【0015】
また、本発明の請求項9に記載の歌唱者が歌唱訓練を行うことを補助する歌唱訓練補助をコンピュータに実行させる歌唱訓練プログラムは、音声信号入力手段より入力された音声信号から音程変化量を抽出する音程変化量抽出ステップと、当該音程変化量抽出ステップを実行して得られた音程変化量を音程変化量記憶手段に順次記憶する音程変化量記憶ステップと、前記音程変化量記憶手段より複数の音程変化量を読み出し、読み出された複数の音程変化量により構成される一定区間長のフレームに対して自己相関分析または相互相関分析を行うことで相関関数を算出する音程相関関数算出ステップと、当該音程相関関数算出ステップを実行して得られた相関関数を音程相関関数記憶手段に記憶する音程相関関数記憶ステップと、前記音程相関関数記憶手段より読み出された相関関数の特性を用いて入力音声中のビブラート情報を抽出するビブラート検出ステップと、当該ビブラート検出ステップを実行して得られたビブラート情報を表示手段に表示するビブラート表示ステップを備え、歌唱者の歌声から抽出したビブラート情報を確認できるようにしたことを特徴とする。
【0016】
また、請求項10に記載の歌唱力評価機能を有するカラオケ装置は、音声信号入力手段より入力された音声信号からピッチを抽出するピッチ抽出手段と、当該ピッチ抽出手段により得られたピッチを順次記憶するピッチ記憶手段と、前記ピッチ記憶手段に記憶された複数のピッチを読み出し、読み出された複数のピッチにより構成される一定区間長のフレームに対して自己相関分析または相互相関分析を行うことで相関関数を算出する音程相関関数算出手段と、当該音程相関関数算出手段により得られた相関関数を記憶する音程相関関数記憶手段と、前記音程相関関数記憶手段より読み出された相関関数の特性を用いて入力音声中のビブラート区間を検出するビブラート検出手段とを備えることを特徴とする。
【0017】
また、請求項11に記載の歌唱力評価機能を有するカラオケ装置は、音声信号入力手段より入力された音声信号から音程変化量を抽出する音程変化量抽出手段と、当該音程変化量抽出手段により得られた音程変化量を音程変化量記憶手段に順次記憶する音程変化量記憶手段と、前記音程変化量記憶手段より複数の音程変化量を読み出し、読み出された複数の音程変化量により構成される一定区間長のフレームに対して自己相関分析または相互相関分析を行うことで相関関数を算出する音程相関関数算出手段と、当該音程相関関数算出手段により得られた相関関数を記憶する音程相関関数記憶手段と、前記音程相関関数記憶手段より読み出された相関関数の特性を用いて入力音声中のビブラート区間を検出するビブラート検出手段とを備えることを特徴とする。
【0018】
また、請求項12に記載の歌唱力評価機能を有するカラオケ装置は、請求項10乃至請求項11の何れかに記載のカラオケ装置において、前記音程相関関数記憶手段より読み出された相関関数の特性として相関関数を構成する相関係数の一部(正位相の相関係数)と、当該相関係数に対する逆位相の相関係数を利用し、前記正位相の相関係数と前記逆位相の相関係数を用いて入力音声中のビブラート区間を検出するビブラート検出手段とを備えることを特徴とする。
【0019】
また、請求項13に記載の歌唱者の歌唱訓練を補助する歌唱訓練補助機能を搭載したカラオケ装置は、音声信号入力手段より入力された音声信号からピッチを抽出するピッチ抽出手段と、当該ピッチ抽出手段により得られたピッチを順次記憶するピッチ記憶手段と、前記ピッチ記憶手段に記憶された複数のピッチを読み出し、読み出された複数のピッチにより構成される一定区間長のフレームに対して自己相関分析または相互相関分析を行うことで相関関数を算出する音程相関関数算出手段と、当該音程相関関数算出手段により得られた相関関数を記憶する音程相関関数記憶手段と、前記音程相関関数記憶手段より読み出された相関関数の特性を用いて入力音声中のビブラート区間を検出するビブラート検出手段と、当該ビブラート検出手段により得られたビブラート情報を表示手段に表示するビブラート表示制御手段を備え、歌唱者の歌声から抽出したビブラート情報を確認できるようにしたことを特徴とする。
【0020】
また、請求項14に記載の歌唱者の歌唱訓練を補助する歌唱訓練補助機能を搭載したカラオケ装置は、音声信号入力手段より入力された音声信号から音程変化量を抽出する音程変化量抽出手段と、当該音程変化量抽出手段により得られた音程変化量を音程変化量記憶手段に順次記憶する音程変化量記憶手段と、前記音程変化量記憶手段より複数の音程変化量を読み出し、読み出された複数の音程変化量により構成される一定区間長のフレームに対して自己相関分析または相互相関分析を行うことで相関関数を算出する音程相関関数算出手段と、当該音程相関関数算出手段により得られた相関関数を記憶する音程相関関数記憶手段と、前記音程相関関数記憶手段より読み出された相関関数の特性を用いて入力音声中のビブラート区間を検出するビブラート検出手段と、当該ビブラート検出手段により得られたビブラート情報を表示手段に表示するビブラート表示制御手段を備え、歌唱者の歌声から抽出したビブラート情報を確認できるようにしたことを特徴とする。
【発明の効果】
【0021】
本発明の請求項1に記載のビブラート検出方法は、入力音声信号より抽出された複数のピッチにより構成されるフレームに対して、自己相関分析を行うことで高精度なビブラート検出を実現する。
【0022】
また、本発明の請求項2に記載のビブラート検出方法は、入力音声信号より抽出された複数の音程変化量により構成されるフレームに対して、自己相関分析を行うことで高精度なビブラート検出を実現する。
【0023】
また、本発明の請求項3に記載のビブラート検出方法は、請求項2に記載のビブラート検出方法における音程変化量抽出ステップとして、比較的軽い処理で算出できる音程の差分を採用した構成である。この構成のビブラート検出方法は、例えばハードウェア資源の制約がある歌唱力評価装置への搭載に有効である。
【0024】
また、本発明の請求項4に記載のビブラート検出方法は、請求項1乃至請求項3の何れかに記載の発明の効果に加え、正位相の相関係数と逆位相の相関係数を用いることでさらに信頼性の高いビブラート検出を実現することができる。
【0025】
また、本発明の請求項5に記載のビブラート検出方法は、請求項4に記載の発明の効果に加え、正位相の相関係数と逆位相の相関係数を合成することで相関係数から突発的なノイズを除去することができさらに外乱の影響に強い信頼性の高いビブラート検出を実現することができる。
【0026】
また、本発明の請求項6に記載のビブラート検出方法は、請求項1乃至請求項5の何れかに記載のビブラート検出方法に加え、相関係数をしきい値と比較する簡単な回路構成でビブラート検出を行うことができる。
【0027】
また、本発明の請求項7に記載のビブラート検出方法によれば、請求項1乃至請求項6の何れかに記載のビブラート検出方法の副産物として算出された相関関数の相関の強さをビブラートの美しさとして利用することができる。
【0028】
また、本発明の請求項8に記載の歌唱訓練プログラムは、自己相関関数を用いた検出精度の高いビブラート検出方法を応用して、歌唱力の向上を目指す歌唱者がビブラート歌唱を練習できるように構成したコンピュータにより実行されるプログラムである。本発明により歌唱者は、聴覚が鍛えられたミュージシャンや音楽の先生にしか分からなかった「自分の歌声にビブラートがかかっているか?」、「そのビブラートはきれいかどうか?」などを視覚的に確認することができる。
【0029】
また、本発明の請求項9に記載の歌唱訓練プログラムは、自己相関関数を用いた検出精度の高いビブラート検出方法を応用して、歌唱力の向上を目指す歌唱者がビブラート歌唱を練習できるように構成したコンピュータにより実行されるプログラムである。本発明により歌唱者は、聴覚が鍛えられたミュージシャンや音楽の先生にしか分からなかった「自分の歌声にビブラートがかかっているか?」、「そのビブラートはきれいかどうか?」などを視覚的に確認することができる。
【0030】
また、本発明の請求項10に記載のカラオケ装置は、入力音声信号より抽出された複数のピッチに対して自己相関分析を行う検出精度の高いビブラート検出手段を備える。カラオケ装置に搭載される歌唱力評価機能は、高精度なビブラート検出手段を備えることで、ビブラート歌唱に対応した高精度な歌唱力評価が可能となる。
【0031】
また、本発明の請求項11に記載のカラオケ装置は、入力音声信号より抽出された複数の時系列音程変化量に対して自己相関分析を行う検出精度の高いビブラート検出手段を備える。カラオケ装置に搭載される歌唱力評価機能は、高精度なビブラート検出手段を備えることで、ビブラート歌唱に対応した高精度な歌唱力評価が可能となる。
【0032】
また、本発明の請求項12に記載の歌唱力評価機能を有するカラオケ装置は、請求項11に記載の発明の構成に加え、正位相の相関係数と逆位相の相関係数を用いたさらに信頼性の高いビブラート検出手段を搭載した構成である。この構成のカラオケ装置は、特にノイズや外乱の多い環境に設置される場合でも安定して高精度なビブラート検出ができ、ビブラート歌唱に対応した高精度で信頼性の高い歌唱力評価が可能となる。
【0033】
また、本発明の請求項13に記載の発明は、自己相関関数を用いた検出精度の高いビブラート検出手段を応用して、歌唱力の向上を目指す歌唱者がビブラート歌唱を練習できる歌唱訓練補助機能を搭載したカラオケ装置である。本発明により歌唱者は、聴覚が鍛えられたミュージシャンや音楽の先生にしか分からなかった「自分の歌声にビブラートがかかっているか?」、「そのビブラートはきれいかどうか?」などを視覚的に確認することができる。
【0034】
また、本発明の請求項14に記載の発明は、自己相関関数を用いた検出精度の高いビブラート検出手段を応用して、歌唱力の向上を目指す歌唱者がビブラート歌唱を練習できる歌唱訓練補助機能を搭載したカラオケ装置である。本発明により歌唱者は、聴覚が鍛えられたミュージシャンや音楽の先生にしか分からなかった「自分の歌声にビブラートがかかっているか?」、「そのビブラートはきれいかどうか?」などを視覚的に確認することができる。
【発明を実施するための最良の形態】
【0035】
次に本発明を適用した実施の形態について図面を参照して詳しく説明する。まず本発明の第一実施形態として、歌唱力評価装置を搭載したカラオケ装置について説明する。図1は第一実施形態におけるカラオケ採点装置の外観である。図1に示すように、カラオケ装置1にはマイク2、ディスプレイ3、AMP4が接続されており、AMP4にはスピーカ5が接続されている。
【0036】
図2は、カラオケ装置1の内部構造について説明したブロック図である。図2に示すように、カラオケ装置はCPU(Central Processing Unit)19を中心にした電子回路で構成される。CPU19はHDD(Hard Disk Drive)18、ビデオコントローラ6、ミキサ7、RAM(Random Access Memory)9、採点処理部12に接続され、各機器の動作を制御する。マイク2は、カラオケ装置1内部のA/D変換部17に接続される。A/D変換部17は、RAM9とミキサ7に接続される。ミキサ7は演奏装置8に接続されており、ミキサ7の出力を演奏装置8を経由して外部のAMP4に伝える。RAM9には、A/D変換部17、採点処理部12、CPU19が接続されている。RAM9にはA/D変換部17によりA/D変換された音声信号、採点処理部12により算出されたカラオケ採点結果などが記録される。
【0037】
採点処理部12は、ピッチ抽出部13、ビブラート検出部14、得点算出部15から構成され、ピッチ抽出部13とビブラート検出部14の出力を基に、得点算出部15で得点算出を行う構造になっている。
【0038】
HDD18には、多数のカラオケ曲の背景映像、演奏データ、歌詞テロップ、その他の情報が蓄えられている。操作部16は、パネルスイッチや、リモコン受信回路から成り、ユーザによる操作信号をCPU19に伝える。歌い手が多数のカラオケ曲から特定の曲を選択し操作部16より入力すると、CPU19は、その信号を受けてHDD18より該当するカラオケ曲の演奏データを読み出し、ミキサに出力する。
【0039】
一方、マイク2より入力された歌唱者の歌声は、A/D変換部17でサンプリングされ、ミキサ7に送られる。ミキサ7はマイク2から入力された歌唱者の歌声とHDD18より読み出された演奏データを合成し、演奏装置8に出力する。合成された演奏データはAMP4を経由してスピーカ5から出力される。同時に、CPU19は背景映像および歌詞テロップをビデオコントローラ6に送る。歌詞テロップは、演奏と同期してディスプレイ3に表示され、現在演奏されている歌詞テロップの色が変化していく。歌唱者は歌詞テロップを見ながら伴奏に従って歌を歌う。この一連の動作制御はCPU19が担当している。なお、ビデオコントローラ6が請求項に言う「表示制御手段」及び「ビブラート表示制御手段」に相当し、ディスプレイ3が請求項に言う「表示手段」に相当する。
【0040】
次に、採点処理部12の動作について説明する。カラオケ装置に付属するカラオケ採点機能を使用するかどうかは歌唱者の意思に委ねられる。カラオケ採点を希望する歌唱者は操作部16を操作して、採点機能をONにする。歌唱者のカラオケ歌唱が始まると、CPU19は採点処理部12に採点開始指示を与える。採点開始指示を与えられた採点処理部12はカラオケ採点を開始する。マイク2より入力された歌唱者の歌声は、A/D変換部17によりサンプリングされ、DMA(Direct Memory Access)によりRAM9に音声信号として記録される。ピッチ抽出部13はRAM9から音声信号を読み出し、ピッチを算出する。同時に、ビブラート検出部14はRAM9から音声信号を読み出し、ビブラートを検出する。得点算出部15はピッチ抽出部13より検出されたピッチ情報と、ビブラート検出部14により検出されたビブラート情報に基づき、得点を算出する。算出された得点は、採点結果としてRAM9に書き込まれる。なお、このA/D変換部17が請求項に言う音声信号入力手段に相当する。
【0041】
演奏終了後、CPU19が採点終了指示を採点処理部12に与えると、カラオケ採点処理は終了する。CPU19はRAM9から読み出した採点結果をビデオコントローラ6に送る。採点結果はディスプレイ3に表示され、歌唱者は歌の採点結果を確認し一喜一憂する。なお、本実施形態では演奏終了後に得点をディスプレイ3に表示しているが、これに限らず歌唱者が歌い始めてから現時点までの中間得点を順次ディスプレイに表示していき歌唱者が歌いながら得点を確認できる構造にしても良い。
【0042】
第一実施形態では、採点処理部12は、DSP(Digital Signal Processor)と採点処理を行う採点専用ファームウェアによって構成される。通常のカラオケ採点装置ではDSPはピッチ算出のみに用いられ、採点処理はCPUが行う構成が多かったが、本実施形態では採点に関わる殆ど全ての処理をDSP(採点処理部)が担当する。この構成により、採点回路設計の自由度が格段に向上すると共に非常に詳細な分析が可能となる。
【0043】
次に、RAM9に設定される記憶領域について、図3を参照して説明する。音声信号記憶メモリ9Aは、A/D変換部17によりA/D変換された音声信号を記憶する領域である。自己相関関数記憶メモリ9Bは、採点処理部12内部にあるピッチ抽出部13で算出される自己相関関数を記憶する領域である。合成自己相関関数記憶メモリ9Cは、ピッチ抽出部13で算出される合成自己相関関数を記憶する領域である。有声・無声判定結果記憶メモリ9Dは、RAM9より読み出された切り出し音声フレームが有声音か?無声音か?判定した結果を記憶する領域である。ピッチ記憶メモリ9Eは、ピッチ抽出部13で算出されるピッチを記憶する領域である。ピッチ変化量I記憶メモリ9Fは、ビブラート検出部14により算出されたピッチ変化量Iを記憶する領域である。ピッチ変化量II記憶メモリ9Gは、ビブラート検出部14により算出されたピッチ変化量IIを記憶する領域である。ビブラート情報記憶メモリ9Hは、ビブラート検出部14により算出されたビブラート情報を記憶する領域である。瞬時得点記憶メモリ9Iは、得点算出部15により算出された瞬時得点を記憶する領域である。累積得点記憶メモリ9Jは、得点算出部15により算出された累積得点を記憶する領域である。ビブラート比率記憶メモリ9Kは、採点におけるビブラートの寄与度を記憶する領域である。ワークメモリ9Wは、採点処理部が、採点処理の一時記憶などに使用する領域である。なお、ピッチ記憶メモリ9Eが請求項に言う「ピッチ記憶手段」に相当し、ビブラート情報記憶メモリ9Hが請求項にいう「ビブラート記憶手段」に相当する。また、ピッチ変化量I記憶メモリ9F及びピッチ変化量II記憶メモリ9Gは請求項にいう「音程変化量記憶手段」に相当する。また、ワークメモリ9Wが請求項に言う「音程相関関数記憶手段」に相当する。
【0044】
図4は、採点処理部12で行われる採点動作手順について説明したフローチャート、図5は採点処理部12のブロック図である。採点処理部12の動作について、図3、図4、図5を参照して説明する。採点処理部12は、ピッチ抽出部13、ビブラート検出部14、得点算出部15より構成される。
【0045】
まず、ピッチ抽出部13の動作について図4に示すフローチャートを参照して説明する。自己相関関数算出モジュール131は、RAM9の音声信号記憶メモリ9Aより読み出された音声信号を基に自己相関関数を算出し、RAM9の自己相関関数記憶メモリ9Bに書き込む(S10)。合成自己相関関数算出モジュール132は、RAM9の自己相関関数記憶メモリ9Bから読み出された自己相関関数を基に合成自己相関関数を算出し、RAM9の合成自己相関関数記憶メモリ9Cに書き込む(S11)。なお、合成自己相関関数の詳細については後述する。有声・無声判定モジュール133は、RAM9の自己相関関数記憶メモリ9Bから読み出された自己相関関数を基に「入力音声が有声音か無声音か?」の判定を行い、判定結果をRAM9の有声・無声判定結果記憶領域9Dに書き込む(S12)。ピッチ抽出モジュール134は、RAM9の自己相関関数記憶メモリ9BとRAM9の合成自己相関関数記憶メモリ9Cから、自己相関関数と合成自己相関関数を読み出し、これらを基にピッチ抽出を行い、検出されたピッチをRAM9のピッチ記憶メモリ9Eに書き込む(S13)。上述S10〜S13までの処理をピッチ抽出部13が担当する。なお、上記S13の処理が請求項に言う「ピッチ抽出ステップ」、「ピッチ記憶ステップ」に相当し、S13の処理を実行する採点処理部(DSP)12が「ピッチ抽出手段」に相当する。
【0046】
次に、ビブラート検出部14の処理について説明する。ピッチ変化量I算出モジュール141は、RAM9のピッチ記憶メモリ9Eより読み出されたピッチを基にピッチ変化量Iを算出しRAM9のピッチ変化量I記憶メモリ9Fに書き込む(S14)。ピッチ変化量II算出モジュール142は、RAM9の合成自己相関関数記憶メモリ9Cより読み出された合成自己相関関数を基にピッチ変化量IIを算出し、RAM9のピッチ変化量II記憶メモリ9Gに書き込む(S15)。ビブラート検出モジュール143は、RAM9のピッチ変化量II記憶メモリ9Gより読み出されたピッチ変化量IIを基にビブラート検出を行い、ビブラート検出結果をRAM9のビブラート情報記憶メモリに書き込む(S16)。ビブラート検出モジュールの動作の詳細については後述する。上述S14〜S16までの処理をビブラート検出部14が担当する。なお、上記S14及び上記S15の処理が請求項に言う「音程変化量抽出ステップ」及び「音程変化量記憶ステップ」に相当し、S14及びS15の処理を実行する採点処理部(DSP)12が「音程変化量抽出手段」に相当する。また、上記S16の処理が請求項に言う「ビブラート検出ステップ」及び「ビブラート記憶ステップ」に相当し、S16の処理を実行する採点処理部(DSP)12が「ビブラート検出手段」に相当する。
【0047】
得点算出部15は、RAM9の有声・無声判定結果記憶メモリ9D、ピッチ記憶メモリ9E、ピッチ変化量I記憶メモリ9F、ピッチ変化量II記憶メモリ9G、ビブラート情報記憶メモリ9Hより、それぞれ有声・無声判定結果、ピッチ、ピッチ変化量I、ピッチ変化量II、ビブラート検出結果を読み出し、これらを基に得点算出を行う(S17)。処理S17により得られた得点算出結果は、RAM9の瞬時得点記憶メモリ9I、累積得点記憶メモリ9Jに書き込まれる。これら一連の採点処理は、CPU19から採点終了指示を受ける(S18)ことで終了する。
【0048】
以下、ピッチ抽出部13、ビブラート検出部14、得点算出部15の動作とその物理的意味について詳細に説明する。ピッチ抽出部13では、低音のピッチ抽出に有利な自己相関関数法を歌唱ピッチ抽出用に改良して用いる。
【0049】
図6は自己相関関数によるピッチ抽出法について説明したものである。第一実施形態では、マイク2より入力された歌唱音声は、A/D変換器17によりサンプリング周波数 48[kHz]でサンプリングされ、RAM9の音声信号記憶メモリ9Aに書き込まれる。採点処理部12は、RAM9の音声信号記憶メモリ9Aから、1回の分析につき1440[point]の分析フレームを切り出し分析を行う。自己相関関数法では、『分析フレーム:F={x(1),x(2),…,x(N)}』と『分析フレームをi[point]ずらしたもの:F={x(i),x(1+i),…,x(N+i)}』の相関を求める。相関値R(0,i)を計算する式の一例を数式1に示す。
【数1】

【0050】
自己相関関数法では、FとFのずれ量iを1〜N[point]まで変化させ、相関値(類似度)R(0,i)を順次算出していく。このようにして算出された自己相関関数R(0,i)は、メモリ9の自己相関関数記憶メモリ9Bに書き込まれる。
【0051】
通常の自己相関関数を用いたピッチ抽出法では、ピッチ(基本周波数)fは、相関値R(0,i)を利用して数式2により算出される。数式2は、ずれ量iを順次変化させていったときの相関値 R(0,i)が最大になるずれ量argmax{R(0,i)}を音声信号の基本周期として検出し、サンプリング周波数48000[Hz]を基本周期で割ったものをピッチとして算出するという意味である。
【数2】

【0052】
表1(a)〜表1(c)は自己相関関数法において、基本周期iのときに計算されるピッチfを示したものである。表1(a)〜表1(c)が示すように、自己相関関数法は、低音域の音程分解能(周波数分解能)が細かくなり高音域の音程分解能が粗くなる特徴をもつ。
【表1】

【0053】
図7(a)は男性歌唱者が発声したA4(440[Hz])の歌声に自己相関分析を行ったものである。自己相関関数は、周波数440[Hz]付近で最大値をとっている。一方、220[Hz]付近,110[Hz]付近,440[Hz]付近でも自己相関関数は極大値をとっている。これは、楽音(歌声)には"倍音"が存在するためである。例えば、A2(110Hz)で発声した歌声は、A3(220Hz)の倍音やA4(440Hz)の倍音を多く含む。
【0054】
会話認識用途のピッチ抽出では、440[Hz]として検出すべきものを220[Hz]/880[Hz]と誤って検出する半ピッチ/倍ピッチ誤りが問題となるが、カラオケ採点用途のピッチ抽出では、半ピッチ/倍ピッチ誤りは大した問題ではないと考える。以下その理由について説明する。440[Hz]を音階で表すと"A4"である。220[Hz]はA4より1オクターブ低い"A3"、880[Hz]はA4より1オクターブ高い"A5"で、何れもA(ラ)の音である。カラオケでは、女性が男性歌手の歌を1オクターブ高い音程で歌うことがある。さらに、ガイドメロディーのピッチは歌唱者に聞き取り易くするために原曲の1オクターブ上に設定してあることが多い。歌唱者のピッチとガイドメロディは1オクターブ異なることもあるし、同じ音程となることもある。従って、カラオケ採点にはオクターブ情報は不要である。歌唱者が発声した音程が"A4(440[Hz])なのか?","A3(220[Hz])なのか?"は問題では無く、音程がAであることが分かれば十分である。
【0055】
次に自己相関関数の音程分解能を向上させる方法について図7を参照して説明する。自己相関関数を用いて分析された約4オクターブの帯域を、〔1〕70〜150[Hz]帯域、〔2〕140〜300[Hz]帯域、〔3〕280〜600[Hz]帯域、〔4〕560〜1200[Hz]帯域の4帯域(それぞれ1オクターブ強の帯域)に分割する(図7(a)参照)。次に、〔1〕,〔2〕,〔3〕,〔4〕の各帯域の自己相関関数を加算・合成する(図7(b)参照)。図7(b)の一部を拡大したものが図7(c)である。〔1〕の帯域では自己相関関数のポイント数が多く、〔4〕の範囲ではポイント数が少ない。〔2〕〜〔4〕に、線形補間を行うことで、ポイント数の格差を無くしてから合成する。この方法は、高音域(例えば〔4〕)のポイント数を、低音域(〔1〕)のポイント数で補うことになるため、高音域でピッチ抽出時の音程分解能が粗くなる問題を解消できる。さらに、自己相関関数を"補強"するため、突発的なノイズに強いピッチ抽出が可能となる。この合成した自己相関関数(以下、合成自己相関関数と記す)が最大値(または、極大値・極小値・極値)をとる周波数(音程)をピッチ周波数fとして検出する。なお、この合成処理によって生成された合成自己相関関数は1オクターブ強の周波数帯域を持つスペクトルとなる。従って、本実施形態における合成自己相関関数からは1オクターブ強の帯域に整理されたピッチが抽出される。
【0056】
図7(b)に示す合成自己相関関数は音階毎の音声パワーの強さを示したものと考えることができる。図7(b)の例では、パワーは"A"と"G#"の中間で最大値をとり、歌唱者は『A(ラ)より微妙に低い音程』で発声していることが分かる。合成自己相関関数を用いることで、音程分解能の高い歌唱力評価用のピッチ抽出を実現できる。
【0057】
しかし、前述の合成自己相関関数が最大値(または、極大値・極小値・極値)をとる周波数(音程)をピッチとする方法では、フォルマント(声道の共振特性)の影響によりピッチの誤検出が起きる場合がある。この現象について説明する。図8(a)は男性低音系歌唱者の歌声から自己相関関数を算出した例である。この音程はA2#で、自己相関関数法により正しくピッチを求めることができる。一方、図8(b)は合成自己相関関数と〔1〕70〜150[Hz]帯域の自己相関関数を重ね書きしたものである。自己相関関数を合成することにより、フォルマント(声道の共振特性)の影響を受け、誤ったピッチ(D)を検出していることが分かる。
【0058】
声が低い場合や声に厚みがある(倍音が多い)場合はフォルマントの影響によりピッチの誤検出が起き易くなる。図8(b)には、この問題を回避する方法についても説明している。(a)自己相関関数からピッチfを求めた後、(b)合成自己相関関数が最大となる周波数をf±Δの範囲で最探索し、ピッチf’として求め直す『2段探索』を用いてピッチ抽出する。2段探索を用いることで、フォルマントの影響によるピッチ誤検出を回避できる。第一実施形態では、このようにして計算されたピッチfがRAM9のピッチ記憶メモリ9Eに書き込まれる。同様に合成自己相関関数はRAM9の合成自己相関関数記憶メモリ9Cに書き込まれる。
【0059】
図9には、合成自己相関関数をピッチ抽出に用いたときの音程分解能を示す。比較のため、自己相関関数法と高速フーリエ変換法の音程分解能も示す。合成自己相関関数は、(y)半音階の1/10の音程分解能境界よりさらに細かい音程分解能を持ち、半音階を18〜37等分することができる。従来のピッチ抽出法との検出精度の違いを例を用いて説明する。例えば、高速フーリエ変換法では、歌唱者が100[Hz]付近の低い音程で歌った場合、音程分解能は300[cent]程度となる。100[cent]は半音の差で、例えば『ド』と『ド#』の違いである。300[cent]は半音階の3倍である。つまり、高速フーリエ変換によるピッチ抽出では、低音系男性歌唱者が『ド』で歌っているのか『ド#』で歌っているのかさえ判別できない。これに対し、本実施形態で示す合成自己相関関数は周波数帯域に関わらず、半音階を最低18分割して分析することが可能である。『微妙に高いド#』とか『微妙に低いド#』を表現できる。
【0060】
次に、歌唱者の歌声が有声音か無声音か判別する方法について簡単に説明する。人間の声には有声音と無声音があるが、一般的に無声音からはピッチを算出することはできないことが知られている。このため、ピッチを算出する前に有声音・無声音判定を行う必要がある。有声・無声は、数式1で使用する自己相関関数の比R(0,imax)/R(0,0)を用いて簡単に判定できる。R(0,imax)/R(0,0)が一定しきい値より大きければ有声音、一定しきい値より小さければ無声音と判定する。本実施形態では、無声音はピッチの信頼度が低いため歌唱力評価には用いない。また、有声・無声判定法としては、自己相関関数の比に限らずゼロクロス法などの他の公知な有声・無声判定技術を用いることもできる。
【0061】
なお、本実施形態では、自己相関関数で分析する周波数帯域をカラオケ採点で必要と考えられる4オクターブ(70[Hz]〜1200[Hz])の範囲とし、〔1〕70〜150[Hz]帯域、〔2〕140〜300[Hz]帯域、〔3〕280〜600[Hz]帯域、〔4〕560〜1200[Hz]帯域の4帯域(それぞれ1オクターブ強の帯域)に分割しているが、これに限らず、分析帯域は必要に応じて自由に変更することができる。
【0062】
例えば、世界屈指のアカペラグループのベースヴォーカルはA1(55Hz)を発声することができ、高音域を得意とする一部の女性ヴォーカルはA6(1760Hz)付近の高音を含む旋律を歌うという事実もある。これらを考慮に入れて、50[Hz]〜1760[Hz]の帯域を分析する特別仕様の歌唱力評価システムを作ることもできる。この場合、例えば人間の発声する音程を50[Hz]〜1700[Hz]の約5オクターブとして各分析帯域を、〔1〕50〜120[Hz]帯域、〔2〕100〜240[Hz]帯域、〔3〕200〜480[Hz]帯域、〔4〕400〜960[Hz]帯域、〔5〕800〜1920[Hz]帯域の5帯域に分割する。この方法では分析帯域を広げられるだけではなく、音程分解能が飛躍的に向上する利点がある。図10は、分析帯域を50[Hz]〜1760[Hz]としたときの音程分解能と、分析帯域を70[Hz]〜1200[Hz]としたときの音程分解能を比較したものを示す。最低分析周波数を70[Hz]から50[Hz]まで下げると音程分解能は2.5[cent]から1.8[cent]に改善され、より細かい分析ができるようになる。
【0063】
また、本実施形態ではサンプリング周波数48000[Hz]のA/D変換器17を使用した例を示しているが、例えばサンプリング周波数を96000[Hz]に変更しても音程分解能を向上させることができる。例えば、プロ志向の歌唱者の歌声を分析する場合には、最低分析周波数を下げる、サンプリング周波数を向上させるなどの調整をすることが好ましい。ただし、最低分析周波数を下げたり、サンプリング周波数を上げたりすると分析時間が長くかかることから、これらのパラメータはハードウェアの性能と、分析する歌唱者のレベルを考慮に入れて適宜決定する必要がある。
【0064】
なお、本実施形態では数式1に示した自己相関関数を用いてピッチ抽出を行っているが、これに限らず、例えば数式1を数式3に置き換えることも可能である。数式3はユークリッド距離と呼ばれる尺度である。数式1を用いた実施形態では、「相関値R(0,i)が最大値(または極大値)をとるずれ量」を分析フレームの基本周期と判定しピッチ抽出を行っていたが、これを数式3に置き換えた場合は「ユークリッド距離R(0,i)が最小値(または極小値)をとるずれ量」を分析フレームの基本周期と判定しピッチ抽出を行うことができる。ここでいう相関関数は、数式1に限らず「切り出しフレーム同士のずらし量を変化させて2フレームの相関(類似度)または距離(非類似度)を調べる関数」のことである。
【数3】

【0065】
また、本ピッチ抽出法の実施形態では、周波数帯域毎に分割した自己相関関数の重ね合わせにより音程分解能の細かいピッチ抽出法を実現したが、これは例えば隣り合うフレーム同士の相関を算出する相互相関関数の重ね合わせでも実現できることは言うまでもない。
【0066】
これまで説明してきた、合成自己相関によるピッチ抽出手順の全貌を図11に示す。採点処理部12は、RAM9の音声信号記憶メモリ9Aより音声信号を読み出す(図11(a)参照)。次に、読み出した音声信号から約30[ms]のフレームを切り出す(図11(b)参照)。図11(c)が切り出した音声信号フレームから算出された自己相関関数である。図11(d)では、自己相関関数を4つの帯域に分割しこれらを重ね合わせることで合成自己相関関数を求めている。図11(e)は合成自己相関関数の時系列データを90度回転させて(図11(f)参照)音程毎のパワーの強さを色の濃さとして表現したものである。これは一種のソナグラムで音程毎のパワーの強さが時間の経過と共に変化していく様子を観察するのに適している。図11(g)は合成自己相関関数から求めたピッチ周波数(音階)である。本手法により、音程分解能が非常に細かい歌唱力評価用のピッチ抽出が実現する。
【0067】
次に、ピッチ変化量算出方法について図12を参照して説明する。ピッチ抽出部13はピッチと合成自己相関関数を算出し、結果をRAM9に書き込む。ピッチ変化量は、ピッチの差分として求める方法と合成自己相関関数のずらしマッチングを用いて求める方法の2通りがある。ピッチ変化量I算出モジュール141では、RAM9のピッチ記憶メモリ9Eより読み出されたピッチを2フレーム分バッファリングし、現在のピッチf(t+1)と一分析フレーム過去のピッチf(t)を用いて、数式4によりピッチ変化量I(Δf)を算出し、ピッチ変化量I記憶メモリ9Fに書き込む。
【数4】

【0068】
しかし、ピッチf(t)(スカラー)は突発的なノイズの影響を受け易いため、数式4で算出されたピッチ変化量I(Δf)は外乱の多い実環境に対応できない可能性がある。より信頼性の高いピッチ変化量算出法として、合成自己相関パターン(ベクトル)のずらしマッチングを用いたピッチ変化量II算出も算出する。ピッチ変化量II算出モジュール142は、RAM9の合成自己相関関数記憶メモリ9Cより読み出された合成自己相関関数を2フレーム分バッファリングし、現在の合成自己相関関数と一分析フレーム過去の合成自己相関関数を用いてピッチ変化量II(Δf)を算出し、ピッチ変化量II記憶メモリ9Gに書き込む。
【0069】
合成自己相関関数のずらしマッチングによるピッチ変化量算出法について具体例を示したのが図13である。図13(a),(b)では、歌声波形から合成自己相関関数を算出している。
【0070】
図13(c)では、合成自己相関関数の隣り合う2フレームcor(t,i),cor(t+1,i)を切り出し、ずらしマッチングを行っている。ずらしマッチングでは、類似度が最大となるずれ量Δtを2フレーム間のピッチ(音程)変化量として数式5により求める。
【数5】

数式6により、ずれ量Δtをピッチ変化量Δfに変換する。
【数6】

【0071】
図13(d)は合成自己相関関数のずらしマッチングにより求めたずれ量Δtである。音程変化の算出に、合成自己相関関数cor(t,i)のずらしマッチングを用いることで突発的なノイズに影響され難い信頼性の高いピッチ変化量Δfの算出が可能となる。
【0072】
図14は、数式4により算出した(比較的信頼性の低い)ピッチ変化量Iである。図14と図13(d)はほぼ同じ変化をしているが、図14では突発的に変化量の大きい部分(信頼性の低い部分)が出てくることがある。信頼性の高いピッチ変化量II(Δf)と通常のピッチ変化量I(Δf=f(t)−f(t+1))の差Dfを用いてピッチf(t),f(t+1)の信頼性を逆算することもできる(数式7参照)。
【数7】

例えばDfが一定しきい値より大きいとき、ピッチ変化量I(Δf)を算出する基となった信頼性の低いピッチf(t),f(t+1)を採点対象から除外するという使い方ができる。
【0073】
なお、数式5ではずらしマッチングの評価関数としてユークリッド距離を用いているが、これに限らず、評価関数は2つのベクトルの類似度または非類似度(距離)を表す他の関数で置き換えることができる。例えば数式5のユークリッド距離の式を相互相関関数におきかえても良い。
【0074】
次に、ビブラート検出モジュール143の動作について図15と図16を参照して説明する。図15は、第一実施形態におけるビブラート検出手順を示すフローチャート、図16は第一実施形態におけるビブラート検出手順を示すブロック図である。ビブラート検出モジュール143は、ピッチ変化量Δfを入力として、ビブラート判定結果を出力する。入力に用いるピッチ変化量Δfは、ピッチ変化量I(Δf)としても良いし、ピッチ変化量II(Δf)としても良い。例えば、よりビブラート検出の信頼性を高めたい場合はピッチ変化量IIを用い、演算速度を優先したい場合はピッチ変化量Iを用いることもできる。
【0075】
ビブラート判定を行うためには、複数フレーム分のピッチ変化量Δfが必要になる。例えば、フレーム周期が10[ms]の場合、ピッチ変化量は10[ms]毎に1つ算出される。人間の歌声のビブラート周期は140[ms]〜300[ms]であることから、ビブラート算出には合計500[ms]分程度のピッチ変化量が必要である。周期性算出モジュール143Aは、RAM9のピッチ変化量II記憶メモリ9G(またはピッチ変化量I記憶メモリ9F)より読み出されたピッチ変化量信号50フレーム分(500[ms])のピッチ変化量Δfをリングバッファに蓄えておき、蓄えられた音程変化量Δfから、正位相の相関係数、逆位相の相関係数、分散を算出しRAM9のワークメモリ9Wに記録する(S161、S162、S163)。なお、上記S161の処理及びS162の処理が請求項に言う「音程相関関数算出ステップ」及び「音程相関関数記憶ステップ」に相当し、S161及びS162を実行する採点処理部(DSP)12が「音程相関関数算出手段」に相当する。
【0076】
正位相・逆位相合成モジュール143Bは、ワークメモリ9Wより正位相の相関係数と逆位相の相関係数を読み出し、これらを合成した相関係数をワークメモリ9Wに書き込む(S164)。ビブラート尺度算出モジュール143Cは、正位相・逆位相合成した相関係数と分散をワークメモリ9Wから読み出し、正位相・逆位相合成した相関係数と分散からビブラート判定結果とビブラートの美しさを算出し、RAM9のビブラート情報記憶メモリ9Kに書き込む(S165)。
【0077】
次に、ピッチ変化量からビブラートを検出する手段について実データを用いて詳細に説明する。図17は、サンプリング周波数48000[Hz]で標本化された歌声波形である。図17に示す歌声波形からピッチ周波数を算出したものが図18である。この歌声波形にはピッチ周波数が正弦波状に変化しているビブラート区間と、それ以外の区間が存在する。図18のピッチの差分をとったものが図19に示す音程変化波形である。以下、図19に示すビブラートなし区間Aとビブラートあり区間Bを使ってビブラート検出の考え方を説明する。
【0078】
図20はビブラートがかかっていない区間Aの切り出し波形とその自己相関関数について示したものである。自己相関関数は信号の周期性を調べるのに適している関数で、例えば次式で算出される。
【数8】

図20の例で説明すると、区間Aの切り出し波形x(t)とAの切り出し波形をτずらしたものx(t+τ)の積和をとったものが自己相関関数c(τ)である。区間Aはビブラート区間ではなく周期性が弱いため、相関関数c(τ)は弱い相関を示す。
【0079】
一方、図21は周期性のあるビブラート区間Bの切り出し波形について自己相関関数を求めた例である。自己相関関数はビブラート周期に相当するずれ量τ=17のとき、強い正の相関を示す。一方、τ=17の逆位相に相当するτ=25では強い負の相関が現れている。負の相関は、ビブラート周期の半分の周期τ=8付近にも現れる。τ=8もτ=17の逆位相に相当する。
【0080】
図22は図19に示す音程変化波形の全切り出し区間について求めた正位相の自己相関係数と、その相関係数の逆位相に相当する相関係数を示したものである。正位相の自己相関係数は、140[ms]〜300[ms](14〜30[point])の範囲でずらし量を変化させたときの自己相関関数の最大値 Cmaxとして求め、そのときのずれ量をPとする。音程変化に周期性がある場合、Pの半分のずれ量P/2(逆位相)では負の相関が現れるはずである。そこで、ずれ量P/2のときの自己相関係数Cnegを求める。ビブラート区間では、正位相の相関係数は大きな値をとり、逆位相の相関係数は小さな値をとることが分かる。自己相関関数に現れる正位相・逆位相の相関係数の特徴を用いて高精度なビブラート検出を実現できる。
【0081】
図23は、正位相の相関係数Cmaxと逆位相の相関係数Cnegを合成したものである。合成により、ビブラート区間とそれ以外の区間の差がますます顕著になる。図23の相関係数が一定しきい値を超えるフレームをビブラートとして判定することができる。本手法により、精度の高いビブラート検出が可能である。ビブラートがきれいな周期性を持っていれば、相関係数が大きくなるため、相関係数の大きさをビブラートの美しさとして取り出し、後段の採点処理で利用することもできる。
【0082】
さらに、各フレーム毎の音程変化量の差分信号について分散・標準偏差などの振幅情報を算出し、「振幅が小さいフレームはビブラート区間と見なさない」などの判定条件を加えることで、より信頼度の高いビブラート判定が実現できる。なお、ビブラート検出は、正位相・逆位相の相関係数を合成したものを使って行っても良いし、正位相の相関係数、逆位相の相関係数を単独で用いても良い。
【0083】
なお、ここでいう自己相関関数は数式8に限らず、「切り出しフレーム同士のずらし量を変化させて2フレームの相関(類似度)または距離(非類似度)を調べる関数」のことである。例えば、自己相関関数として数式8の代わりに数式9のユークリッド距離を採用しても良い。
【数9】

【0084】
数式8はビブラート周期に相当するずれ量τで最大値をとる関数であるが、数式9はビブラート周期に相当するずれ量τで最小値をとる関数である。同様に、ピッチ変化量の算出には、数式5(ユークリッド距離)を評価関数として合成自己相関関数のずらしマッチングを行う例を示したが、評価関数はユークリッド距離の代わりに自己相関関数を用いることもできる。
【0085】
なお、本実施の形態においては、ピッチの差分をとった音程変化波形から相関係数を算出しているが、これに限らずピッチ波形から直接自己相関関数を算出することもできる。その場合数式10に示すような形の自己相関関数を利用することが好ましい。
【数10】

【0086】
本実施形態で、ピッチの差分を用いているのは、ピッチ波形から直流分の影響を打ち消すためである。数式10では、ピッチの差分波形を用いる代わりに、ピッチ波形から平均値を差し引いて相関関数を算出することにより、直流分(≒平均値)の影響を打ち消している。
【0087】
さらに、本実施の形態では、自己相関関数を用いてビブラート検出法を説明したが、例えば同一フレーム同士から算出する自己相関係数の代わりに、隣り合うフレーム同士の相関を求める相互相関関数を用いることもできる。
【0088】
本ビブラート検出法では、1つのフレームがビブラート区間に属するかどうか?を50ポイントの切り出し波形を用いて算出しているため、ビブラート検出精度が非常に高い。
【0089】
次に、得点算出部15にの動作について詳細に説明する。第一実施形態では、入力音声信号を表2に示す(i)〜(iv)の4つの区間に分類する。(i)無声区間と(iii)ピッチの変化が激しい区間(音程変化量が大きい区間)は得点算出には用いず、(ii)ビブラート区間と(iv)通常歌唱区間について得点算出を行う。
【表2】

【0090】
図24は、第一実施形態における得点算出部15の得点算出手順を示すフローチャート、図25は、得点算出部15のブロック図である。信頼性算出モジュール151は、RAM9の有声・無声判定結果記憶メモリ9D、ピッチ変化量I記憶メモリ9F及びピッチ変化量II記憶メモリ9Fよりそれぞれ有声・無声判定結果、ピッチ変化量I、ピッチ変化量IIを読み出し、これらを基にピッチの信頼性を算出し、算出されたピッチの信頼性をRAM9のワーク領域9Wに書き込む(S171)。瞬時得点算出モジュール152は、RAM9のピッチ記憶メモリ9E、ビブラート情報記憶メモリ9H、ビブラート比率記憶メモリ9K、ワーク領域9Wよりそれぞれピッチ、ビブラート判定結果、ビブラート比率、ピッチの信頼性を読み出し、歌唱者の歌声1分析フレーム分の瞬時得点を算出し、算出した瞬時得点をRAM9の瞬時得点記憶メモリ9Iに書き込む(S172)。
【0091】
ここで、RAM9のビブラート比率記憶メモリ9Kに書き込まれるビブラート比率とは得点におけるビブラートの寄与度を決定する係数で、例えばカラオケBOXのオーナが好みにより調整することができるパラメータである。得点累積モジュール153は、RAM9の瞬時得点記憶メモリ9Iより読み出された瞬時得点を累積し、カラオケ採点が始まってから現在に至るまでの累積得点を算出し、RAM9の累積得点記憶メモリ9Jに記録する(S173)。
【0092】
カラオケ採点終了後、累積得点記憶メモリ9Jに記録された累積得点は、RAM9より読み出され、ビデオコントローラ6を経由して、ディスプレイ3に表示される。歌唱者は、ディスプレイ3に表示された採点結果を見て一喜一憂する。なお、得点は累積得点をそのままディスプレイに表示しても良いし、得点変換関数や変換テーブルを通して変換をかけたものを表示しても良い。これらの変換テーブルや変換関数は事前に得点分布の統計調査を行った上で、例えば100点が算出される確率が全体の5%以下になるように設計した変換テーブルや変換関数を用いる。
【0093】
以下、得点算出部15の得点算出原理について詳細に説明する。本発明の第一実施形態に示すピッチ抽出部13では、非常に音程分解能の高いピッチ(半音の幅を18〜38分割して分析)を算出することができる。音程分解能が細かいため、従来のピッチ抽出法では困難であった"音程が微妙に上ずっている"・"微妙に低い"ということを識別できる。
【0094】
図26は、上手な歌唱者が歌った歌声について分析した結果である。図27は同一の曲を下手な歌唱者が歌ったものを分析した結果である。上手い人は音程が正確に12音階に乗っているが、下手な人では音程は12音階から離れてくることが観察できる。
【0095】
本実施形態に示す採点処理では、「歌唱者の歌声が12音階に乗っているかどうか?」だけを判定する。カラオケで再生されるMIDI伴奏は平均率音階(12音階)に乗った音の集合である。歌声が心地よく聴こえるためには、少なくとも歌声はMIDI伴奏と同じ平均率音階(12音階)に乗っていなければならない。本採点法では、MIDIデータを参照せずに"音程が12音階に乗っているかどうか?"だけを定量化するため、アドリブやフェイクの入った歌でも採点できる。歌の音程が12音階に乗っていれば、ガイドメロディの通りの音調でなくても「上手い」と考える。この採点法では歌唱者が不協和音で歌った場合でも、音程が12音階にさえ乗っていれば「上手い」と判定する。不協和音を12音階にしっかり乗せることは、声楽的には非常に高度な技術である。それが出来る人は並外れた技術を持った歌唱者(実は相当上手い)と仮定している。
【0096】
しかし、音階に乗っているかどうかだけでは歌唱力を十分に評価できない。人間の感性に近い歌唱力評価をするためにはビブラート部分の評価も重要となってくる。図28は、図26・図27と同じ曲のフレーズをプロの歌手が歌ったときのピッチ変化である。歌が上手い歌唱者はビブラートを多用することもある。ビブラート歌唱区間では、通常歌唱区間と異なる採点方法が必要である。
【0097】
また、音声認識の分野では、入力音声が無声音の場合はピッチを正確に算出することができないことが知られている。本発明の第一実施形態に示す採点では、入力音声信号に対し有声・無声判定を行い、無声音と判定された区間は得点算出に用いないこととする。
【0098】
ピッチの変化が激しい区間についても考慮する必要がある。例えば音符と音符の境目、しゃくり上げ部分、しゃくり下げ部分では、ピッチの変化が激しいため、歌の上手い下手に関わらず音程が12音階に乗りにくくなる。したがって、ビブラート区間以外でピッチの変化量が一定しきい値を超える区間は得点算出に用いないこととする。
【0099】
図29に得点算出の基本的な考え方を示す。入力音声信号を通常歌唱区間とビブラート区間に分け、通常歌唱区間の得点D(t)と、ビブラート区間の得点D(t)をそれぞれ算出する。ピッチの信頼性の低い区間と、ビブラート区間以外でピッチの変化量が激しい区間は得点算出に用いない。
【0100】
通常歌唱区間(ビブラート以外の区間)の得点算出法について詳細に説明する。"ピッチが平均率音階からどのくらい離れているか?"を示す尺度d(t)を数式11で定義する。図30は数式11の意味を図示したものである。d(t)は、分析時刻tにおける歌唱者のピッチf(t) と12音階のうち最も近い音との距離を示す。歌唱者の歌声ピッチが正確であれば、尺度d(t)は小さい値となる(尺度d(t)が小さい→得点が高い)。なお、数式11では歌唱者の歌声から抽出したピッチf(t)と1オクターブに整理された平均率音階(12音階)MFの比較を行っている。これは本実施形態の前段におけるピッチ抽出手段より出力されるピッチが1オクターブ範囲内に整理されているからである(図7参照)。本実施形態では1オクターブ範囲内のピッチを比較することで、人間の全歌唱音域の音程と平均率音階を比較していることになる。しかし、これに限らず、例えばピッチ抽出手段は4オクターブ帯域のピッチを出力する構成として、数式11はそれに対応する4オクターブ帯域の全音域の平均率音階上の音との比較をしても良い。また、ピッチ抽出手段は5オクターブ帯域のピッチを出力する構成として、数式11はそれに対応する5オクターブ帯域の全音域の平均率音階上の音との比較するものとすることも容易にできる。
【数11】

【0101】
現在、歌唱者が歌っている状態を想定して考える。歌唱者が歌い始めて、カラオケ採点が開始されてから現在に至るまでにビブラート区間と判定された区間長の合計をnrで表す。次に、ビブラート区間以外で、ピッチの変化量が激しくなく、ピッチの信頼性があると判定された区間を通常歌唱区間と呼ぶことにする。カラオケ採点が開始されてから現在に至るまでに通常歌唱区間と判定された区間長の合計をnpで表す。ビブラート累積区間長nrと通常歌唱累積区間長npの合計を累積区間長nとすると、n,np,nrは数式12の関係を満たす。
【数12】

【0102】
カラオケ採点が開始されてから現在に至るまでの歌唱時間の合計tは、分析フレーム周期Δtと累積区間長nを用いて数式13で表現できる。なお、本実施形態ではΔt=10[ms]である。
【数13】

(t)は、"時刻tにおけるピッチf(t) が平均率音階からどのくらい離れているか?"を示す尺度で"瞬時得点"である。瞬時得点は、長時間に渡って累積平均をとることにより信頼性のある得点となる。時刻tにおける累積平均距離(累積平均得点)D(t)を数式14により算出する。D(t)が通常歌唱区間における音程の正確さを示す式である。
【数14】

【0103】
次に、ビブラート区間の平均得点を算出する。時刻tにおけるビブラート区間の距離d(t) は、採点開始時点から時刻tに至るまでの音階−ピッチ間の平累積距離D(t)に係数αを乗じたものとして、数式15で計算する。ビブラート区間の平均累積距離D(t)は数式16で計算する。αは0〜1.0の範囲の実数である。数式15の意味は以下の通りである。
【0104】
「時刻tにおいて歌唱者がビブラートをかけている場合、時刻tにおける歌唱者の瞬時得点d(t)は、通常歌唱区間の累積平均点D(t)より若干高い得点αD(t)で置き換える。」
【数15】

【数16】

【0105】
ビブラート得点に通常歌唱区間の平均点d(t)・D(t)を反映させることで、下手な人がビブラートを多用しても高得点にはならないように調整している。この方法により、音程の不正確な人がビブラートを使った場合は、音程の正確な人がビブラートを使った場合より低い得点となる。係数αは採点におけるビブラートの寄与度を調整する係数で、カラオケBOXオーナーの好みで調整することもできる。例えば演歌が好きなオーナーはαを小さめに設定して、ビブラートの寄与度を高くすることができる。
【0106】
総合的な累積距離D(t)は、通常歌唱区間の平均距離D(t)とビブラート区間の平均距離D(t)の平均値として数式17で算出する。累積距離D(t)は人間が主観的に付けた得点と強い相関を持つ。この採点法は、周波数分解能が高い高精度なピッチ抽出と外乱に強い高精度なビブラート検出法があってはじめて効果を発揮する。
【数17】

【0107】
次に、本実施形態で算出した尺度D(t)と人間が主観でつけた得点との相関を調べ、採点アルゴリズムの評価を行った結果を示す。まず、20名の歌唱者が同一の曲を歌った場合について、本採点法の評価を行った。歌唱者(男性10名・女性10名)が歌った有名な歌謡曲を歌唱者以外の34名の被験者に聞き比べてもらい、プリファレンススコアを作成した。プリファレンススコアとは、対比較においてその歌声がどの程度の支持率であったかを示す数値である。歌唱データから後半の1フレーズを切り出したものを対比較評価用データとする。なお、女性歌唱者データにはプロの歌手1名に依頼して採取した歌声を追加・混入した。これと同時に本実施形態により計算した得点D(t)を算出し、プリファレンススコアと得点D(t)の相関図を作成した。
【0108】
図31は、女性のデータについて求めたプリファレンススコアと尺度Dの相関図である。プリファレンススコアと尺度Dの間には強い相関が見られる。尺度Dが最も小さく音程が最も正確なのは、プロの歌手の歌声である。しかし声が低く、原曲と歌い方が異なるため、人間の主観評価(プリファレンススコア)では2位になっていると考えられる。主観評価で1位となった歌唱者は通常より高めのキーで歌ったため、被験者に与えるインパクトが強かったと推測される。
【0109】
図32は男性の歌声から算出した相関図である。男性データでも、距離D(t)とプリファレンススコアの相関がみられる。プリファレンススコア約40点の被験者が最も12音階からの距離が小さくなっている。この被験者の歌声を聴くと、音程は正確でビブラートも上手にかかっており、技術的には上手な歌唱者である。しかし、歌詞の譜割りなどが演歌調で原曲と異なり、歌い方に癖があるため主観評価の点数が低下したと推測される。これらの図から、例えば「D(t)が20[cent]を切る人はそこそこ上手い」と判断できる。図31・図32より、D(t)は人間の主観得点と相関の強い尺度となっていることが分かる。
【0110】
次に、歌唱者が異なる曲を歌った場合について本採点法の評価を行った結果を示す。データの採取方法を図33に示す。5〜6名の歌唱者のグループを募集した。1グループ:5〜6名の歌唱者に交代で歌って頂き歌唱データを採取した。歌っている歌唱者以外について、次に歌う歌唱者は歌う曲の選曲、それ以外の歌唱者は現在歌っている歌唱者の得点を記録した。なお歌唱者には、歌の途中ではキー変更や、演奏停止をしないで、歌唱曲の歌える範囲でできる限り多くのジャンルの曲を歌って頂けるようお願いした。得点は満点を100点とし、採点者の主観で記入して頂いた。採点者全員がつけた平均得点を主観評価の得点とする。
【0111】
2日間評価を行った結果について説明する。図34は1日目の採取データから求めた相関図である。この日の参加者は6人、歌唱者1人の歌声に対し残りの5人で採点を行ったときの平均点数を主観評価の点数としてグラフにプロットした。距離D(t)と主観評価の点数には強い相関があることが分かる。
【0112】
図35は、2日目の採取データから求めた相関図である。参加者は40〜60代の女性5人である。歌唱者1人の歌声に対し3人で採点を行い残り1人は次に歌う曲を選ぶという分担で採点を行った。この日歌われた曲のほとんどは演歌である。距離D(t)と主観評価の点数には相関が見られる。図34と比べて少し相関が弱い原因としては、採点者が5人から3人に減少したためと考えられる。
【0113】
図31、図32、図34、図35より、D(t)は人間の主観得点と相関の強い尺度となっていることが分かる。従って、例えば尺度D(t)を線形変換すれば、人間の主観評価と相関の強い得点を算出することができる。実際のカラオケ装置における採点では、100点の出現確率を減少させるなどの工夫が必要となるため、D(t)[cent]に非線形変換を行い得点に変換することも考えられる。
【0114】
なお、本実施形態ではガイドメロディ情報を一切使わずにカラオケ採点を行う例を示した。しかし、これに限らずガイドメロディと歌唱者の歌声を比較する従来の採点法も併用した採点システムを構築することも可能である。例えば、ガイドメロディと歌唱者のピッチを比較して歌の忠実度を算出し、本実施形態で示した採点法で尺度D(t)を算出した後、2つの得点を合成して歌唱者の歌の得点とすることもできる。また、2つの得点の高い方を選んで最終的な得点とすることも容易に考えられる。
【0115】
また大抵の場合、カラオケ装置で演奏されるMIDI楽曲は平均率音階の集合であるため、本実施形態では、歌唱者の歌声から抽出したピッチと平均率音階を比較して歌の得点を算出する例を示した。しかし、これに限らず、ピッチと純正率音階を比較するのが好ましい場合もある。カラオケ装置の伴奏には、生バンドの曲を録音したスタジオ録音曲やプロのアカペラグループが演奏したものを録音したアカペラ伴奏曲も存在する。特にアカペラ伴奏曲などでは、歌唱者の歌声から抽出した純正率音階を比較した方がより精度の高い歌唱力評価ができることもある。また、生のピアノ演奏を録音したスタジオ録音曲では、平均率音階をピアノ調律曲線を用いて補正した音階と歌唱者の歌声から抽出したピッチを比較する方法が好ましい場合もある。これらの音階は、カラオケ楽曲の属性により、適宜選択するようにカラオケ採点装置を構成することも考えられる。本明細書に記載の平均率音階とは、ピアノの調律曲線などにより補正された後の平均率音階を含むこととする。
【0116】
また、本発明の第一実施形態におけるビブラート検出法では、合成自己相関関数のずらしマッチングを用いて音程の変化量を算出していた。これと同様に、入力歌声信号から合成自己相関関数の代わりにLPCスペクトル、FFTスペクトル、群遅延スペクトル、LPCケプストラム、自己相関関数などのスペクトル特徴を抽出し、スペクトルのずらしマッチングを用いて外乱に強いピッチ変化量算出・ビブラート検出ができる。一例として、図36にLPC(Linear Predictive Coding)スペクトルを用いた音程変化量算出法を示す。図36(a)の音声信号に対して線形予測分析を行いLPCスペクトルを求めたものが図36(b)である。LPCスペクトルを観察しても、ビブラートはきれいに現れていることがわかる。例えば、LPCスペクトルの周波数帯域500[Hz]〜1000[Hz]を切り出し(図36(c))、切り出した帯域のLPCスペクトルのずらしマッチングを用いて音程変化量を算出することができる。
【0117】
この場合、音声信号記憶メモリ9Aから読み出された音声信号に線形予測分析を行い、LPCスペクトルを求め、メモリ9の所定の位置に記憶する。ずらしマッチングの式は、数式18で示される。メモリ9より読み出した隣り合う2フレームのLPCスペクトルlpc(t,i),lpc(t+1,i)のずれ量を算出する。ずれ量の単位は[Hz]で算出される。さらにLPCスペクトルの周波数軸を対数スケールに変換した後、ずらしマッチングを行うようにすれば、全分析周波数帯域の音程分解能が均等になり、より高精度な分析ができる。ここで算出されたピッチ変化量Δfを入力としてビブラート検出を行うことは容易である。
【数18】

【0118】
さらに、数式18により算出されたピッチ変化量は、数式5と数式6により算出されたピッチ変化量と同様、信頼性の高いものとなる。数式18により算出された信頼性の高いピッチ変化量II(Δf)とピッチの差分により算出されたピッチ変化量I(Δf)の差Dfを用いてピッチf(t),f(t+1)の信頼性を逆算することもできる(数式19参照)。数式19は、数式7と同じ形となっている。
【数19】

【0119】
次に、本発明における第二の実施形態について図37〜図39を参照して説明する。第二実施形態は、PC(Personal Computer)上で動作する歌唱訓練/採点ソフトウェアである。
【0120】
図37に示すように、第二実施形態の歌唱訓練/採点装置を構成するPC50は、周知のパーソナルコンピュータの一般的な構成からなり、文字や各種の操作指令などを入力するためのキーボード61やマウス59、入力された結果等を表示するモニタ65を備えている。また、PC50には、CD−ROM63の内容を読み取るCD−ROMドライブ62が搭載されている。
【0121】
また、PC50は、中央演算処理装置としてのCPU51を中心にバスにより相互に接続されたROM52、RAM53、表示画像メモリ54、マウスインターフェース58、キーボードインターフェース60、ビデオコントローラ64、及びA/D変換器66を備えている。そして、マウスインターフェース58にはマウス59が接続され、キーボードインターフェース60にはキーボード61が接続され、ビデオコントローラ64にはモニタ65が接続されている。さらに、A/D変換器66には、マイク67が接続されている。
【0122】
ROM52は、BIOS等の内蔵されている各種プログラム等を記憶する読み出し専用のメモリである。RAM53は、実行中のプログラムを一時的に記憶したり、各種データ等を記憶する読み出し・書き込み可能なメモリである。表示画像メモリ54は、モニタ65に表示する画像の画像データを記憶するメモリである。マウスインターフェース58は、マウス59とのデータ等のやりとりを司るインターフェースである。キーボードインターフェース60は、キーボード61からのキー入力を司るインターフェースである。ビデオコントローラ64は、表示画像メモリ54に記憶される表示画像データに基づいてモニタ65における画像の表示を制御するコントローラである。A/D変換器66は、マイク67より入力された音声信号をサンプリングしてPC50内に採り込む装置である。なお、このA/D変換器66が請求項に言う音声信号入力手段に相当する。
【0123】
PC50のオペレーティングシステム(OS)56は、ハードディスクドライブ(HDD)55に記憶されており、PC50に電源を投入すると、HDD55のブートブロックに書き込まれたローダに従ってRAM53の所定の領域にロードされる。また、HDD55には、歌唱訓練/採点ソフトウェア57が記憶されており、歌唱訓練/採点ソフトウェア57が起動され、RAM53に読み込まれ、これをCPU51が実行することにより、歌唱訓練処理や歌唱採点処理が行われる。尚、本実施形態においては歌唱訓練/採点ソフトウェア57はHDD55に記憶されているが、ROM52に記憶されていてもよいし、CD−ROM63に記憶され、CD−ROMドライブ62から読み込まれて実行されるように構成してもよい。さらに、PC50をネットワークに接続し、ネットワーク上のサーバから歌唱訓練/採点ソフトウェア57をダウンロードして実行するようにしてもよい。
【0124】
マイク67をコンピュータ50に接続し、歌唱訓練/採点ソフトウェアを起動すると、歌唱訓練処理/歌唱採点処理が開始される。第二実施形態に示すソフトウェアは音程訓練モードと歌唱採点モードの2つのモードを持っており、歌唱者は2つのモードのうち1つを選択することができる。歌唱者は、マウス59やキーボード61などの入力装置を用いて音程訓練モードと歌唱採点モードどちらかを選択する。
【0125】
音程訓練モードでは、マイク67より入力された歌唱者の音声はA/D変換器66によりサンプリング周波数48[kHz]でサンプリングされ、RAM53に書き込まれる。RAM53の記憶領域は、第一実施形態におけるRAM9の記憶領域に加え、歌唱訓練/採点ソフトウェアが格納される記憶領域が存在する。RAM53に書き込まれた音声信号より合成相関関数が算出され、RAM53の合成自己相関関数記憶メモリに書き込まれる。次に、RAM53の合成自己相関関数記憶メモリと自己相関関数記憶メモリより合成自己相関関数と自己相関関数が読み出されピッチが計算され、算出されたピッチはRAM53のピッチ記憶メモリに記憶される。これら合成自己相関関数及びピッチの算出手順は第一実施形態における図4〜図11に示したものと全く同じであるので、図4〜図11の説明を援用する。
【0126】
このようにして歌唱者の歌声から算出したピッチは、RAM53から読み出され、PC50のモニタ65に平均率音階と共に表示される。図38は、歌唱者が音程訓練モードを利用して音程訓練を行っているときのモニタ65の様子を示したものである。図38において、トンボが歌唱者の音程(ピッチ)の高さ、水平方向に引かれた直線が平均率音階を示している。音程訓練モードでは、歌唱者の歌声から抽出されたピッチと平均率音階をリアルタイムで表示することで、音程の正確さを歌唱者にフィードバックすることができる。歌唱者は、A4(440Hz)で歌った後、E5(660Hz)の音程で歌っている。歌唱者は音階に乗ったピッチで歌っているつもりでも、パソコンのディスプレイに表示してみるとE5の音程が微妙に低いことが分かる。
【0127】
このソフトウェアは第一実施形態の図10に示した最低分析周波数50[Hz]の合成自己相関関数を採用することで、50[Hz]〜1700[Hz]の約5オクターブ帯域のピッチを検出、表示することができる。合成自己相関関数を用いたピッチ抽出法は、音程分解能が高く、非常に細かな音程のずれを分析できる。聴覚が鍛えられたミュージシャンや音楽の先生にしか分からなかった"微妙に高い","微妙に低い"という違いを視覚的に表現することができる。これは合唱の音程訓練、バンドのヴォーカルの個人練習にも利用でき、歌唱者の歌の上達を補助することができる。単に歌唱者のピッチを表示するだけのシンプルなものでも、音程訓練用途としては十分役に立つ。
【0128】
本ソフトウェアを合唱・声楽のトレーニング用途として利用する場合は、基準となる音階はA4=440[Hz]に合わせるのが好ましいときもあり、A4=442[Hz]に合わせるのが好ましいときもある。通常オーケストラなどで用いる基準音は伴奏に用いる楽器の構成によって変わってくる。また、ピアノ伴奏に合わせて歌うときのトレーニングでは、理論的な平均率音階とピアノの調律音階の差を埋めるために、ピアノの調律曲線を用いて歌唱者の歌声ピッチや基準となる音階を補正し、表示するのが良い場合もある。また、人の歌声だけで演奏するアカペラ曲の場合、平均率音階ではなく、純正率音階を基準線として用いるのが好ましい場合もある。本実施形態に示す音程訓練ソフトウェアの音程訓練モードは、これらの基準となる音階を適宜選択できるメニュー画面を持つ。メニュー画面はモニタ65に表示され、音程訓練を行う歌唱者は、マウス59やキーボード61などの入力装置を用いて基準となる音階を選択できる。
【0129】
次に、歌唱採点モードでは、マイク67より入力された歌唱者の音声はA/D変換器66によりサンプリング周波数48[kHz]でサンプリングされ、RAM53に書き込まれる。RAM53の記憶領域は、第一実施形態におけるRAM9の記憶領域に加え、歌唱訓練/採点ソフトウェアが格納される記憶領域が存在する。RAM53に書き込まれた音声信号より合成相関関数が算出され、RAM53の合成自己相関関数記憶メモリに書き込まれる。本発明の第一実施形態に示したものと全く同じ手順で自己相関関数、合成自己相関関数、有声・無声判定結果、ピッチ、ピッチ変化量I、ピッチ変化量II、ビブラート情報、瞬時得点、累積得点などが算出され、RAM53に書き込まれる。本ソフトウェアでは、第一実施形態で採点処理部(採点DSP)12が行っていた処理をCPU51が担当する。採点処理手順は第一実施形態における図4〜図35に示したものと全く同じであるので、図4〜図35の説明を援用する。なお第二実施形態では、RAM53が請求項に言う、「ピッチ記憶手段」、「ビブラート記憶手段」、「音程変化量記憶手段」及び「音程相関関数記憶手段」に相当する。また、図4におけるS13の処理が請求項に言う「ピッチ抽出ステップ」、「ピッチ記憶ステップ」に相当し、S13の処理を実行するCPU51が「ピッチ抽出手段」に相当する。また、図4におけるS14及びS15の処理が請求項に言う「音程変化量抽出ステップ」及び「音程変化量記憶ステップ」に相当し、S14及びS15の処理を実行するCPU51が「音程変化量抽出手段」に相当する。また、図4におけるS16の処理が請求項に言う「ビブラート検出ステップ」及び「ビブラート記憶ステップ」に相当し、S16の処理を実行するCPU51が「ビブラート検出手段」に相当する。また、図15におけるS161の処理及びS162の処理が請求項に言う「音程相関関数算出ステップ」及び「音程相関関数記憶ステップ」に相当し、S161及びS162を実行するCPU51が「音程相関関数算出手段」に相当する。
【0130】
図39は、本歌唱訓練/採点ソフトウェアの歌唱採点モードの実行画面である。このアプリケーションは、得点を算出するのと同時に歌声から抽出したピッチ波形(PITCH)とビブラート波形(TREMOLO)をリアルタイムで表示でき、さらにビブラートの美しさ、ビブラート回数などをリアルタイムで算出して表示する。なお、これら「ビブラート波形」、「ビブラートの美しさ」、「ビブラート回数」などをコンピュータに表示させる処理が請求項にいうビブラート表示ステップに相当する。ここで表示しているビブラート波形は、第一実施形態で説明した音程変化量Iまたは音程変化量IIのことである。また、ビブラートの美しさとは第一実施形態の図22・図23で説明した相関係数の大きさである。
【0131】
本ソフトウェアを使用することで、歌唱者は歌の得点を知ると同時に、現在歌っているフレーズのビブラート形状とビブラートの美しさを目視で確認することができる。この機能を利用して歌唱者はビブラートの練習が可能である。以上の説明より、カラオケ装置上で動作するビブラート訓練装置やパソコン上で動作するビブラート訓練装置は容易に実現できることがわかる。なお、本実施例ではビデオコントローラ6が請求項に言う「表示制御手段」及び「ビブラート表示制御手段」に相当し、ディスプレイ3が請求項に言う「表示手段」に相当する。
【0132】
なお、これらの音程訓練機能・ビブラート訓練機能は本発明の第一実施形態におけるカラオケ装置の"練習モード"などにも応用できることは言うまでもない。カラオケ装置では、例えば、プロの歌手の歌声から抽出したピッチと歌唱者が歌ったときのピッチを同時に表示して、カラオケを練習する歌唱者の手助けをする練習ソフトを作ることもできる。また、前述のビブラート検出法によりプロの歌声から検出されたビブラート波形と、カラオケを歌っている歌唱者の歌声から検出されたビブラートを同時にモニタに表示するビブラート練習機能付きカラオケ装置なども容易に実現できる。
【産業上の利用可能性】
【0133】
本発明は、カラオケ装置に搭載されるカラオケ採点装置、合唱・声楽などのトレーニング用途としての歌唱訓練装置、及び歌唱力評価装置に利用することができる。
【図面の簡単な説明】
【0134】
【図1】本発明の第一実施形態におけるカラオケ装置の外観である。
【図2】本発明の第一実施形態におけるカラオケ装置のブロック図である。
【図3】RAM9に確保される記憶領域を示す図である。
【図4】同カラオケ装置の採点処理部の動作を示すフローチャートである。
【図5】採点処理部12のブロック図である。
【図6】自己相関関数の算出法を説明する図である。
【図7】自己相関関数を帯域毎に分割・合成することで音程分解能(周波数分解能)を向上させる方法を示す図である。
【図8】本ピッチ抽出法におけるピッチの2段探索法を示す図である。
【図9】合成自己相関関数法によるピッチ抽出における音程分解能と従来のピッチ抽出法における音程分解能を比較したものを示す図である。
【図10】合成自己相関関数の最低分析周波数を70[Hz]から50[Hz]まで下げることにより音程分解能が向上することを示す図である。
【図11】合成自己相関関数を用いたピッチ抽出手順の全貌を示す図である。
【図12】本発明の実施形態における音程変化量(2通り)の算出手順を示すブロック図である。
【図13】合成自己相関関数のずらしマッチングを用いた信頼性の高いピッチ変化量(音程変化量)算出法を示す図である。
【図14】ピッチ差分から求めた(比較的信頼性の低い)ピッチ変化量を示す図である。
【図15】本発明の実施形態におけるビブラート検出手順を示すフローチャートである。
【図16】本発明の実施形態におけるビブラート判定手順を示すブロック図である。
【図17】ビブラート歌唱区間とそれ以外の歌唱区間を含む歌声波形の図である。
【図18】図17の歌声波形から抽出したピッチ(音程)を示す図である。
【図19】図18のピッチの差分をとり算出した音程変化量波形の図である
【図20】図19のビブラートがかかっていない区間(区間A)の切り出し波形から算出した自己相関関数を示す図である。
【図21】図19のビブラートがかかっている区間(区間B)の切り出し波形から算出した自己相関関数を示す図である
【図22】図19のピッチ変化量から算出した「正位相の相関係数」と「逆位相の相関係数」を示した図である。
【図23】図22の「正位相の相関係数」と「逆位相の相関係数」を合成したものを示す図を示す図である。
【図24】本発明の実施形態における得点算出手順を示すフローチャートである。
【図25】本発明の実施形態における得点算出手順を示すブロック図である。
【図26】上手な人の歌声(プリファレンススコア:96点)から抽出した音程を示す図である。
【図27】下手な人の歌声(プリファレンススコア:23点)から抽出した音程を示す図である。
【図28】プロの歌手の歌声(プリファレンススコア:122点)から抽出した音程を示す図である。
【図29】ビブラート歌唱区間とそれ以外の歌唱区間を分離して採点する本採点法の概念を示す図である。
【図30】歌唱ピッチと平均率音階(12音階)からの最小距離を示す図である。
【図31】女性の歌声データから求めたプリファレンススコア(主観評価得点)と、本発明の実施形態で提供する距離尺度D(t)の相関図である。
【図32】男性の歌声データから求めたプリファレンススコア(主観評価得点)と、本発明の実施形態で提供する距離尺度D(t)の相関図である。
【図33】カラオケ音声データと人の主観による得点の採取手順を示す図である。
【図34】距離尺度D(t)と人の主観評価の平均点(データ採取:1日目)を示す図である。
【図35】距離尺度D(t)と人の主観評価の平均点(データ採取:2日目)を示す図である。
【図36】LPCスペクトルのずらしマッチングを用いた音程変化量(ピッチ変化量)の算出方法を示す図である。
【図37】本発明の第二実施形態における歌唱訓練/採点装置の概略構成を示すブロック図である。
【図38】パソコン上で動作するピッチトレーニングソフトの表示画面の図である。
【図39】ピッチ表示機能、ビブラート表示機能、ビブラートの美しさ算出機能を有するカラオケ採点ソフトウェアの表示画面の図である。
【符号の説明】
【0135】
1 カラオケ装置
2 マイク
3 ディスプレイ
4 AMP
5 スピーカ
6 ビデオコントローラ
7 ミキサ(エフェクタ)
8 演奏装置
9 RAM(Random Access Memory)
12 採点処理部(採点DSP)
13 ピッチ抽出部
14 ビブラート検出部
15 得点算出部
16 操作部
17 A/D変換部
18 HDD(Hard Disk Drive)
19 CPU(Central Processing Unit)
50 PC(Personal Computer)
51 CPU
52 ROM(Read Only Memory)
53 RAM
54 表示画像メモリ
55 HDD
56 OS(Operating System)
57 歌唱訓練/採点ソフトウェア
58 マウスインターフェース
59 マウス
60 キーボードインターフェース
61 キーボード
62 CD−ROMドライブ
63 CD
64 ビデオコントローラ
65 モニタ
66 A/D変換器
67 マイク
131 自己相関関数算出モジュール
132 合成自己相関関数算出モジュール
133 有声・無声判定モジュール
134 ピッチ抽出モジュール
141 ピッチ変化量I算出モジュール
142 ピッチ変化量II算出モジュール
143 ビブラート検出モジュール
143A 周期性算出モジュール
143B 正位相・逆位相合成モジュール
143C ビブラート尺度算出モジュール
151 信頼性算出モジュール
152 瞬時得点算出モジュール
153 得点累積モジュール

【特許請求の範囲】
【請求項1】
コンピュータに、
音声信号入力手段より入力された音声信号からピッチを抽出させるピッチ抽出ステップと、
当該ピッチ抽出ステップを実行させて得られたピッチをピッチ記憶手段に順次記憶させるピッチ記憶ステップと、
前記ピッチ記憶手段に記憶された複数のピッチを読み出し、読み出された複数のピッチにより構成される一定区間長のフレームに対して自己相関分析または相互相関分析を行うことで相関関数を算出させる音程相関関数算出ステップと、
当該音程相関関数算出ステップを実行して得られた相関関数を音程相関関数記憶手段に記憶させる音程相関関数記憶ステップとを実行させ、
前記音程相関関数記憶手段から読み出された相関関数の特性を用いて入力音声中のビブラート区間を検出させることを特徴とするビブラート検出方法。
【請求項2】
コンピュータに、
音声信号入力手段より入力された音声信号から音程変化量を抽出させる音程変化量抽出ステップと、
当該音程変化量抽出ステップを実行させて得られた音程変化量を音程変化量記憶手段に順次記憶させる音程変化量記憶ステップと、
前記音程変化量記憶手段より複数の音程変化量を読み出し、読み出された複数の音程変化量により構成される一定区間長のフレームに対して自己相関分析または相互相関分析を行うことで相関関数を算出させる音程相関関数算出ステップと、
当該音程相関関数算出ステップを実行して得られた相関関数を音程相関関数記憶手段に記憶させる音程相関関数記憶ステップとを実行させ、
前記音程相関関数記憶手段から読み出された相関関数の特性を用いて入力音声中のビブラート区間を検出させることを特徴とするビブラート検出方法。
【請求項3】
前記音程変化量抽出ステップとして、
前記音声信号入力手段より入力された音声信号からピッチを抽出させるピッチ抽出ステップと、
当該ピッチ抽出ステップを実行して得られたピッチをピッチ記憶手段に記憶させるピッチ記憶ステップを実行させ、
前記ピッチ記憶手段から読み出された2つ以上のピッチの差分をとることにより音程変化量を算出させることを特徴とする請求項2に記載のビブラート検出方法。
【請求項4】
請求項1乃至請求項3の何れかに記載のビブラート検出方法において、
前記音程相関関数記憶手段より読み出された相関関数の特性として相関関数を構成する相関係数の一部(正位相の相関係数)と、当該相関係数に対する逆位相の相関係数を利用し、
前記正位相の相関係数と前記逆位相の相関係数を用いてビブラート検出を行うことを特徴とするビブラート検出方法。
【請求項5】
請求項4に記載のビブラート検出方法において、前記正位相の相関係数と前記逆位相の相関係数を合成した相関係数を用いてビブラート検出を行うことを特徴とするビブラート検出方法。
【請求項6】
請求項1乃至請求項5の何れかに記載のビブラート検出方法において、前記音程相関関数記憶手段より読み出された相関関数を構成する相関係数の一部が一定しきい値を超えたときに、ビブラートと判定することを特徴とするビブラート検出方法。
【請求項7】
請求項1乃至請求項6の何れかに記載のビブラート検出方法において、前記相関関数により算出される相関の強さをビブラートの美しさとして算出することを特徴とするビブラート検出方法。
【請求項8】
歌唱者が歌唱訓練を行うことを補助する歌唱訓練補助をコンピュータに実行させる歌唱訓練プログラムにおいて、
音声信号入力手段より入力された音声信号からピッチを抽出するピッチ抽出ステップと、
当該ピッチ抽出ステップを実行して得られたピッチをピッチ記憶手段に順次記憶するピッチ記憶ステップと、
前記ピッチ記憶手段に記憶された複数のピッチを読み出し、読み出された複数のピッチにより構成される一定区間長のフレームに対して自己相関分析または相互相関分析を行うことで相関関数を算出する音程相関関数算出ステップと、
当該音程相関関数算出ステップを実行して得られた相関関数を音程相関関数記憶手段に記憶する音程相関関数記憶ステップと、
前記音程相関関数記憶手段より読み出された相関関数の特性を用いて入力音声中のビブラート情報を抽出するビブラート検出ステップと、
当該ビブラート検出ステップを実行して得られたビブラート情報を表示手段に表示するビブラート表示ステップを備え、
歌唱者の歌声から抽出したビブラート情報を確認できるようにしたことを特徴とする歌唱訓練プログラム。
【請求項9】
歌唱者が歌唱訓練を行うことを補助する歌唱訓練補助をコンピュータに実行させる歌唱訓練プログラムにおいて、
音声信号入力手段より入力された音声信号から音程変化量を抽出する音程変化量抽出ステップと、
当該音程変化量抽出ステップを実行して得られた音程変化量を音程変化量記憶手段に順次記憶する音程変化量記憶ステップと、
前記音程変化量記憶手段より複数の音程変化量を読み出し、読み出された複数の音程変化量により構成される一定区間長のフレームに対して自己相関分析または相互相関分析を行うことで相関関数を算出する音程相関関数算出ステップと、
当該音程相関関数算出ステップを実行して得られた相関関数を音程相関関数記憶手段に記憶する音程相関関数記憶ステップと、
前記音程相関関数記憶手段より読み出された相関関数の特性を用いて入力音声中のビブラート情報を抽出するビブラート検出ステップと、
当該ビブラート検出ステップを実行して得られたビブラート情報を表示手段に表示するビブラート表示ステップを備え、
歌唱者の歌声から抽出したビブラート情報を確認できるようにしたことを特徴とする歌唱訓練プログラム。
【請求項10】
音声信号入力手段より入力された音声信号からピッチを抽出するピッチ抽出手段と、
当該ピッチ抽出手段により得られたピッチを順次記憶するピッチ記憶手段と、
前記ピッチ記憶手段に記憶された複数のピッチを読み出し、読み出された複数のピッチにより構成される一定区間長のフレームに対して自己相関分析または相互相関分析を行うことで相関関数を算出する音程相関関数算出手段と、
当該音程相関関数算出手段により得られた相関関数を記憶する音程相関関数記憶手段と、
前記音程相関関数記憶手段より読み出された相関関数の特性を用いて入力音声中のビブラート区間を検出するビブラート検出手段とを備えることを特徴とする歌唱力評価機能を有するカラオケ装置。
【請求項11】
音声信号入力手段より入力された音声信号から音程変化量を抽出する音程変化量抽出手段と、
当該音程変化量抽出手段により得られた音程変化量を音程変化量記憶手段に順次記憶する音程変化量記憶手段と、
前記音程変化量記憶手段より複数の音程変化量を読み出し、読み出された複数の音程変化量により構成される一定区間長のフレームに対して自己相関分析または相互相関分析を行うことで相関関数を算出する音程相関関数算出手段と、
当該音程相関関数算出手段により得られた相関関数を記憶する音程相関関数記憶手段と、
前記音程相関関数記憶手段より読み出された相関関数の特性を用いて入力音声中のビブラート区間を検出するビブラート検出手段とを備えることを特徴とする歌唱力評価機能を有するカラオケ装置。
【請求項12】
請求項10乃至請求項11の何れかに記載のカラオケ装置において、
前記音程相関関数記憶手段より読み出された相関関数の特性として相関関数を構成する相関係数の一部(正位相の相関係数)と、当該相関係数に対する逆位相の相関係数を利用し、
前記正位相の相関係数と前記逆位相の相関係数を用いて入力音声中のビブラート区間を検出するビブラート検出手段とを備えることを特徴とする歌唱力評価機能を有するカラオケ装置。
【請求項13】
歌唱者の歌唱訓練を補助する歌唱訓練補助機能を搭載したカラオケ装置において、
音声信号入力手段より入力された音声信号からピッチを抽出するピッチ抽出手段と、
当該ピッチ抽出手段により得られたピッチを順次記憶するピッチ記憶手段と、
前記ピッチ記憶手段に記憶された複数のピッチを読み出し、読み出された複数のピッチにより構成される一定区間長のフレームに対して自己相関分析または相互相関分析を行うことで相関関数を算出する音程相関関数算出手段と、
当該音程相関関数算出手段により得られた相関関数を記憶する音程相関関数記憶手段と、
前記音程相関関数記憶手段より読み出された相関関数の特性を用いて入力音声中のビブラート区間を検出するビブラート検出手段と、
当該ビブラート検出手段により得られたビブラート情報を表示手段に表示するビブラート表示制御手段を備え、
歌唱者の歌声から抽出したビブラート情報を確認できるようにしたことを特徴とする歌唱訓練補助機能を搭載したカラオケ装置。
【請求項14】
歌唱者の歌唱訓練を補助する歌唱訓練補助機能を搭載したカラオケ装置において、
音声信号入力手段より入力された音声信号から音程変化量を抽出する音程変化量抽出手段と、
当該音程変化量抽出手段により得られた音程変化量を音程変化量記憶手段に順次記憶する音程変化量記憶手段と、
前記音程変化量記憶手段より複数の音程変化量を読み出し、読み出された複数の音程変化量により構成される一定区間長のフレームに対して自己相関分析または相互相関分析を行うことで相関関数を算出する音程相関関数算出手段と、
当該音程相関関数算出手段により得られた相関関数を記憶する音程相関関数記憶手段と、
前記音程相関関数記憶手段より読み出された相関関数の特性を用いて入力音声中のビブラート区間を検出するビブラート検出手段と、
当該ビブラート検出手段により得られたビブラート情報を表示手段に表示するビブラート表示制御手段を備え、
歌唱者の歌声から抽出したビブラート情報を確認できるようにしたことを特徴とする歌唱訓練補助機能を搭載したカラオケ装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図12】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図37】
image rotate

【図11】
image rotate

【図13】
image rotate

【図17】
image rotate

【図28】
image rotate

【図36】
image rotate

【図38】
image rotate

【図39】
image rotate