JP2010085655A - 音域特定システム、プログラム - Google Patents

音域特定システム、プログラム Download PDF

Info

Publication number
JP2010085655A
JP2010085655A JP2008254025A JP2008254025A JP2010085655A JP 2010085655 A JP2010085655 A JP 2010085655A JP 2008254025 A JP2008254025 A JP 2008254025A JP 2008254025 A JP2008254025 A JP 2008254025A JP 2010085655 A JP2010085655 A JP 2010085655A
Authority
JP
Japan
Prior art keywords
singing
stability
pitch
range
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008254025A
Other languages
English (en)
Other versions
JP5125957B2 (ja
Inventor
Noriaki Asemi
典昭 阿瀬見
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2008254025A priority Critical patent/JP5125957B2/ja
Publication of JP2010085655A publication Critical patent/JP2010085655A/ja
Application granted granted Critical
Publication of JP5125957B2 publication Critical patent/JP5125957B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Reverberation, Karaoke And Other Acoustics (AREA)

Abstract

【課題】音域特定システムにおいて、ユーザが無理をすること無く歌唱可能な音域の特定。
【解決手段】歌唱音域特定処理では、各対応期間T(k)に対応する基本周波数遷移f0v(t)それぞれを周波数解析することでビブラートスペクトルを導出し(S320)、そのビブラートスペクトルから最大振動数ピークを検出して、最大振動数ピークに基づく歌唱安定度vsi(k)を導出する(S330)。構成音の音高毎に歌唱安定度vsi(k)を集計した集計安定度mvsi(f)を導出し(S340)、集計安定度mvsi(f)が規定値以上である最低音高から最高音高までを歌唱音域として特定する。つまり、ビブラートにより安定して発声されていれば、歌唱安定度vsi(k)は大きな値となり、集計安定度mvsi(f)も大きな値となるので、ユーザが無理をすること無く歌唱可能な音域が特定されることになる。
【選択図】図3

Description

本発明は、ユーザが歌唱可能な音域を特定する音域特定システム、及びコンピュータを音域特定システムとして機能させるためのプログラムに関する。
従来より、伴奏音楽に合わせて、ユーザが歌唱を楽しむためのカラオケ装置が知られている。
この種のカラオケ装置の中には、ユーザが歌唱可能な音域を特定し、その特定した歌唱可能な音域をユーザに報知するものがある。
例えば、マイクを介して入力された音声(即ち、ユーザが一度でも発声した音声)の中で、最高音高(最高音程)を歌唱最高音とし、最低音高(最低音程)を歌唱最低音とする。そして、その音域を特定する技術としては、ユーザによる楽曲の歌唱中に、歌唱最高音及び歌唱最低音を検出すると共に、それらの検出した最低音高から最高音高までの音高範囲(即ち、音域)を、ユーザが歌唱可能な音域とすることが提案されている(例えば、特許文献1参照)。
特開2002−73058号公報
しかしながら、特許文献1に記載の技術では、ユーザが無理をして発声した歌唱最高音もしくは歌唱最低音であっても(例えば、ユーザが声帯を痛めかねないような発声を実施した場合の音高であっても)、それら歌唱最高音から歌唱最低音までの音域を歌唱可能な音域としてしまうため、歌唱可能な音域を適切に特定しているとは言い難い。
つまり、特許文献1に記載の技術では、ユーザが無理すること無く歌唱可能な音域を適切に特定できないという問題があり、この判定結果に基づいて、カラオケ装置がユーザに楽曲を提案しても、ユーザがカラオケを楽しむことができない可能性があった。
そこで、本発明は、音域特定システムにおいて、ユーザが無理をすること無く歌唱可能な音域を特定することを目的とする。
上記目的を達成するためになされた本発明の音域特定システムでは、音声信号取得手段が、ユーザによる楽曲の歌唱時における音声信号を取得し、歌唱データ生成手段が、その取得した音声信号を周波数解析することで、歌唱の音高の推移を表す歌唱データを生成する。さらに、楽曲データ取得手段が、楽曲を構成する構成音それぞれの音高及び音価を表す楽曲データを取得し、歌唱区間特定手段が、歌唱データ生成手段で生成した歌唱データを、楽曲データと照合することで、構成音それぞれに対応する歌唱データ中の区間である歌唱区間を特定する。
そして、安定度導出手段が、歌唱区間それぞれでのビブラートの安定度合いを表す歌唱安定度を導出すると、音域特定手段が、その導出された歌唱安定度を、それぞれの歌唱区間に対応する構成音の音高毎に集計し、その集計された歌唱安定度(以下、集計安定度と称す)が、予め規定された規定値以上である最低音高から最高音高までの範囲を、ユーザ
が歌唱可能な歌唱音域として特定する。
つまり、本発明の音域特定システムでは、ビブラートによる発声方法でユーザが安定して歌唱できる(即ち、歌唱安定度が規定値以上である)音高の範囲を歌唱音域としている。
そして、ユーザが無理をして発声した状態では、ビブラートによる発声を安定させることが困難であることから、本発明の音域特定システムによれば、ユーザが無理をすること無く歌唱可能な音域を特定することができる。
したがって、本発明の音域特定システムを有したカラオケシステムにおいて、主として特定した歌唱音域内で音高が変化する楽曲を推奨曲としてユーザに提案するようにすれば、ユーザにカラオケをより楽しませることができる。
ところで、通常、歌唱が上手なユーザは、歌唱が下手なユーザに比べて、広い音域にて、ビブラートによる発声方法で安定して歌唱することができる。
つまり、本発明の音域特定システムにおいて、集計安定度を正規化した場合、その集計安定度の分布は、歌唱の上手なユーザほど、各歌唱区間に対応する構成音の音高それぞれの集計結果(即ち、集計安定度)が最大値に近い値となる。一方、集計安定度の分布において、歌唱の下手なユーザほど、最大値と、最大値に対応しない音高それぞれの集計結果(即ち、集計安定度)との値の差が大きくなる。
したがって、請求項2に記載のように、音域特定手段にて用いる規定値を、正規化された集計安定度の最大値に対して予め規定された割合とすれば、歌唱が上手なユーザほど広い音域を歌唱音域として判定することができる。言い換えれば、本発明の音域特定システムによれば、ユーザの歌唱レベル(技量)に拘わらず、ユーザの歌唱音域を適切に判定することができる。
また、一般的に、構成音の音価(即ち、音符の時間長)が長いほど、その構成音に対してビブラートによる安定した発声を実施することが難しくなる。
このため、本発明の音域特定システムにおける音域特定手段は、請求項3に記載のように、歌唱区間に対応する構成音の音価が長いほど、歌唱安定度に大きな重みを付して集計するように構成されていることが望ましい。
このように構成された本発明の音域特定システムによれば、ユーザが無理すること無く発声可能な音域(即ち、歌唱音域)を、より確実に特定することができる。
そして、本発明の音域特定システムにおける安定度導出手段は、請求項4に記載のように、歌唱データを歌唱区間毎に周波数解析することで音高を検出し,音高の時間変化に含まれるビブラート振動成分から振動数ピークの先鋭度を歌唱安定度として導出するように構成されていても良い。
なお、ここでいう振動数ピークとは、ビブラートの成分のうち最も強度の大きな振動成分であり、ここでいう先鋭度とは、最大となる振動数ピーク(即ち、強度が最大となる振動数成分、以下、最大ピークとする)を、強度が最大ピークの値から所定値以下となる周波数帯域の幅で除した値、いわゆるQ値を含むものである。したがって、安定したビブラートにより歌唱されている場合には、一つの振動数成分が検出されるため、先鋭度は大きな値となり、不安定なビブラートにより歌唱されている場合や、ビブラートによる歌唱が
なされていない場合には、先鋭度は小さな値となる。
ところで、本発明は、請求項5に記載のように、コンピュータに各手順を実行させるためのプログラムとしてなされたものであっても良い。
ただし、この場合、本発明のプログラムは、ユーザによる楽曲の歌唱時における音声信号を取得する音声信号取得手順と、その取得した音声信号を周波数解析することで、歌唱の音高の推移を表す歌唱データを生成する歌唱データ生成手順と、楽曲を構成する構成音それぞれの音高及び音価を表す楽曲データを取得する楽曲データ取得手順と、歌唱データ生成手順で生成した歌唱データを、楽曲データと照合することで、歌唱区間を特定する歌唱区間特定手順と、歌唱区間特定手順で特定された歌唱区間それぞれでのビブラートの安定度合いを表す歌唱安定度を導出する安定度導出手順と、その導出された歌唱安定度を、それぞれの歌唱区間に対応する構成音の音高毎に集計し、その集計された歌唱安定度が、予め規定された規定値以上である最低音高から最高音高までの範囲を、ユーザが歌唱可能な歌唱音域として特定する音域特定手順とを含んでいる必要がある。
このような本発明のプログラムをコンピュータに実行させることで、請求項1に記載の音域特定システムと同様の効果を得ることができる。
また、このような本発明のプログラムによれば、例えば、DVD−ROM、CD−ROM、ハードディスク等のコンピュータ読み取り可能な記録媒体に記録し、必要に応じてコンピュータにロードさせて起動することや、必要に応じて通信回線を介してコンピュータに取得させて起動することにより用いることができる。
以下に本発明の実施形態を図面と共に説明する。
まず、図1は、本発明が適用されたカラオケシステムの概略構成を示すブロック図である。
〈カラオケシステム全体の構成〉
カラオケシステム1は、カラオケ用に予め加工された楽曲(以下、カラオケ楽曲とする)の演奏に応じてユーザが歌唱するためのものである。
そのカラオケシステム1は、図1に示すように、ユーザから指定されたカラオケ楽曲の再生を行うカラオケ装置20と、カラオケ楽曲の再生に必要なデータである楽曲データをカラオケ装置20に配信するサーバ30とを備え、それらカラオケ装置20とサーバ30とはネットワーク(例えば、専用回線や、WAN等)を介して接続されている。つまり、カラオケシステム1は、いわゆる通信カラオケシステムとして構成されたものである。
なお、本実施形態(図1)では、カラオケシステム1として、一つのカラオケ装置20と一つのサーバ30とが接続されたものを示すが、カラオケシステム1は、これに限るものではなく、複数のカラオケ装置20と一つのサーバ30とが接続されたものでも良いし、複数のカラオケ装置20と複数のサーバ30とが接続されたものでも良い。
このうち、サーバ30は、カラオケ楽曲の演奏に必要な処理プログラム(以下、カラオケ処理プログラム)及び楽曲データを格納する記憶装置(図示せず)と、ROM,RAM,CPUを少なくとも有した周知のマイクロコンピュータ(図示せず)とを中心に構成された情報処理装置からなる周知のカラオケサービス用サーバ装置である。
つまり、サーバ30は、カラオケシステム1(より正確には、カラオケ装置20)を使
用したユーザに関する情報(以下、ユーザ情報とする)や、カラオケ装置20から送信されたカラオケ採点の結果及びユーザの使用履歴等を一元管理する共に、カラオケ装置20からの要求に対して楽曲データやカラオケ処理プログラムを送信するように構成されている。
ところで、楽曲データは、カラオケ楽曲それぞれについて予め用意され、例えば、MIDI(Musical Instrument Digital Interface)フォーマットにて記述された周知のカラオケ再生用データである。
したがって、楽曲データは、カラオケ楽曲に関するデータである楽曲情報と、ユーザが歌唱すべき旋律に関するデータであるガイドメロディと、そのカラオケ楽曲の歌詞に関するデータである歌詞情報とから構成されている。
そして、楽曲情報には、カラオケ楽曲を特定するための曲番号データと、曲名を示す曲名データと、そのカラオケ楽曲の演奏時間を示す時間データとが含まれている。
また、ガイドメロディは、カラオケ楽曲の旋律を形成する各構成音の音高、及び音価から構成されている。具体的に、本実施形態のガイドメロディは、各構成音それぞれの楽音出力開始時間及び楽音出力終了時間が、各構成音の音高と共に表されている。ただし、ここで言う楽音出力開始時間とは、構成音の出力を開始するカラオケ楽曲の演奏開始からの時間であり、楽音出力終了時間とは、構成音の出力を終了するカラオケ楽曲の演奏開始からの時間である。
〈カラオケ装置について〉
次に、カラオケ装置20の構成について説明する。
このカラオケ装置20は、サーバ30との間でデータ通信を実行するための通信部22と、通信部22を介してサーバ30から取得したカラオケ処理プログラム及び楽曲データを記憶する記憶部21と、各種画像を表示するための表示部23と、ユーザからの指示を受け付ける操作受付部24とを備えている。さらに、カラオケ装置20は、音声を入力するためのマイクロホン26と、音声を出力するためのスピーカ27と、マイクロホン26やスピーカ27を介した音声の入出力を制御する音声入出力部25と、カラオケ装置20を構成する各部21,22,23,24,25を制御する制御部28を備えている。
このうち、通信部22は、カラオケ装置20をネットワーク(例えば、専用回線や、WAN)に接続して外部と通信を行うための通信インタフェースであり、制御部28からの制御指令に従って、サーバ30に各種データを出力すると共に、サーバ30から各種データ(例えば、楽曲データ)や処理プログラムを取得する。
そして、表示部23は、例えば、液晶ディスプレイ等から構成された表示装置であり、操作受付部24は、例えば、複数のキースイッチ等から構成された入力装置や、周知のリモコンを介して入力された指示を受け付ける受信装置などからなる。
また、音声入出力部25は、マイクロホン26を介して入力された音声(アナログ信号)をデジタル信号に変換し、そのデジタル信号を制御部28に入力するAD変換器として構成されている。これと共に、音声入出力部25は、スピーカ27からの音声の出力を制御するように構成されている。なお、以下では、マイクロホン26を介して入力され、デジタル信号に変換された音声を音声データと称す。
さらに、記憶部21は、電源が切断されても記憶内容を保持すると共に記憶内容を読み書き可能に構成された記憶装置(例えば、ハードディスクドライブ)であり、カラオケ処
理プログラムを格納するプログラム格納領域と、楽曲データを記憶する楽曲データ格納領域と、音声データを記憶する特定用データ格納領域とを備えている。なお、特定用データ格納領域は、予め規定された規定数(例えば、5曲分)分のカラオケ楽曲に対する音声データを格納する音声データ格納領域が、予め設定されたユーザ数(例えば、5人分)分だけ用意されたものである。
次に、制御部28は、電源が切断されても記憶内容を保持する必要のあるプログラムやデータを格納するROM28aと、プログラムやデータを一時的に格納するRAM28bと、ROM28aやRAM28bに記憶されたプログラムやデータに従って、カラオケ装置20を構成する各部21,22,23,24,25に対する制御及び各種演算を実行するCPU28cとを少なくとも有した周知のマイクロコンピュータを中心に構成されている。
なお、RAM28bには、記憶部21からカラオケ処理プログラムが読み込まれ、CPU28cは、RAM28bに記憶したカラオケ処理プログラムに従って各処理を実行する。
それらのカラオケ処理プログラムの中には、操作受付部24を介して入力された指示に従って指定されたカラオケ楽曲を演奏(再生)する共に、表示部23に歌詞を表示する周知のカラオケ演奏処理をCPU28cが実行するためのカラオケ演奏処理プログラムが含まれている。また、カラオケ処理プログラムの中には、マイクロホン26を介して入力される音声から抽出した歌唱の音程やテンポを採点基準(即ち、ガイドメロディ)と照合し、その適合度合を点数化することで採点結果とする周知の採点処理をCPU28cが実行するための採点処理プログラムが含まれている。
さらに、カラオケ処理プログラムの中には、ユーザ情報(例えば、氏名、性別、識別番号(ID)、年齢)を操作受付部24を介して受け付けるユーザ情報処理をCPU28cが実行するためのユーザ情報処理プログラムが含まれている。また、カラオケ処理プログラムの中には、ユーザがカラオケ楽曲を歌唱した時に生成されるデータ(例えば、音声データ)や、カラオケ装置20を使用した時の履歴を、記憶部21またはサーバ30に蓄積する蓄積処理をCPU28cが実行するための蓄積処理プログラムが含まれている。
また、カラオケ処理プログラムの中には、記憶部21の判定用データ格納領域に格納された音声データに基づいて、ユーザが歌唱可能な音域(以下、歌唱音域とする)を特定する歌唱音域特定処理をCPU28cが実行するための音域特定処理プログラムが含まれている。つまり、CPU28cが歌唱音域特定処理を実行することにより、カラオケ装置20が、本発明の音域特定システムとして機能する。
次に、カラオケシステム1の作用(動作)について説明する。
カラオケシステム1が使用される場合、カラオケ装置20では、ユーザ情報処理プログラムを実行して、当該カラオケ装置20を利用するユーザの人数分のユーザ情報を受け付け、その受け付けたユーザ情報それぞれを各音声データ格納領域と対応付ける。
さらに、カラオケ装置20では、カラオケ演奏処理プログラムを実行することで、ユーザに指定されたカラオケ楽曲を演奏する共に、そのカラオケ楽曲の歌詞を表示部23に表示する。ただし、制御部28は、各カラオケ楽曲の演奏前には、操作受付部24を介してユーザ情報を取得する。
また、カラオケ楽曲の演奏が開始されると、その時に演奏されるカラオケ楽曲(以下、
該当カラオケ楽曲と称す)に応じてユーザが歌唱する。そして、該当カラオケ楽曲の演奏が終了すると、制御部28では、CPU28cが蓄積処理プログラムを実行して、ユーザの歌唱音声から生成した音声データを、該当カラオケ楽曲の曲番号データと対応付けた上で(以下、音声データと、曲番号データとが対応付けられたデータを対応データとも称す)、音声データ格納領域に格納する。ただし、対応データが格納される音声データ格納領域は、該当カラオケ楽曲に対して歌唱を実行したユーザのユーザ情報に対応付けられたものである。これにより、音声データと、曲番号データと、ユーザ情報とが対応付けられることになる。
以降、カラオケ装置20は、カラオケ演奏処理プログラムの実行から、音声データ格納領域に音声データを格納するまでの一連のサイクルを、ユーザがカラオケ楽曲の指定を終了するまで繰り返す。
〈歌唱音域特定処理〉
次に、CPU28cが実行する歌唱音域特定処理について説明する。
ここで、図2は、歌唱音域特定処理の処理手順を示したフローチャートである。
この歌唱音域特定処理は、記憶部21の音声データ格納領域に規定数の音声データが格納された場合、即ち、一人のユーザが規定数分のカラオケ楽曲を歌唱した場合に起動されるものである。
図2に示すように、歌唱音域特定処理が起動されると、まず、S110にて、記憶部21の音声データ格納領域に格納されている全音声データのうち、一つの音声データを取得する。すなわち、図4(A)に示すように、カラオケ楽曲の演奏(即ち、演奏時間の進行)に沿って信号レベルが変化する音声信号を、音声データとして取得する。
続く、S120では、S110で取得した音声データを周波数解析(本実施形態では、FFT(Fast Fourier Transform))し、音声データの周波数スペクトルを導出する。
具体的に、本実施形態におけるS120では、カラオケ楽曲1曲分の音声データを、連続する時間として予め規定された基準時間(例えば、数十ms、即ち、予め規定されたサンプリング数)毎に抽出する(以下、抽出した音声データを対象データと称す)。そして、対象データそれぞれについて周波数解析(即ち、FFT)を実行する。これにより、周波数解析の結果として、各対象データでの周波数スペクトル(即ち、周波数成分の分布)が、全対象データ数分だけ生成される。
さらに、S130では、S120での周波数解析の結果(周波数スペクトル)に基づいて、該当カラオケ楽曲をユーザが歌唱した時の基本周波数f0の時間遷移を表し、本発明の歌唱データに相当する基本周波数遷移f0v(t)を導出する。
具体的に、本実施形態におけるS130では、櫛型形状で表される調波構造モデルを予め用意し、その調波構造モデルと、各周波数スペクトルとを照合する周知の手法を用いて、対象データについての周波数成分の中から基本周波数f0を検出する。そして、その検出した基本周波数f0を、各対象データの時間遷移、即ち、該当カラオケ楽曲の演奏時間の進行に従って、基本周波数遷移f0v(t)としてまとめる。
これにより、基本周波数遷移f0v(t)は、図4(B)に示すように、該当カラオケ楽曲を歌唱した時の基本周波数f0の時間変化が表されたものとなる。
続くS140では、S110で取得した音声データと対応付けられている曲番号データ
に従って、該当カラオケ楽曲のガイドメロディを記憶部21から取得する。
そして、S150では、S140にて取得したガイドメロディと、S130で導出された基本周波数遷移f0v(t)とに基づいて、各構成音それぞれに対する発声遅れ時間を表す時間遅延量tl(k)を算出する。
ここで、本実施形態における時間遅延量tl(k)の算出方法について詳しく説明する。ただし、本実施形態において、kは、対応する構成音の演奏の順番を表すものであり、該当カラオケ楽曲の演奏開始から、k番目に演奏されることを表している。したがって、kは、1から、構成音の総数を最大値とした自然数である。
まず、ガイドメロディによって表された全構成音の音高の時間変化(即ち、ガイドメロディによる旋律)をガイドメロディ音高とし、k番目の構成音へと音高が切り替わるタイミング(より正確には期間)を音高切替タイミングとする。
そして、図4(C)に示すように、ガイドメロディ音高に基本周波数遷移f0v(t)を照合することで、基本周波数遷移f0v(t)中での音高切替タイミング(以下、歌唱時切替タイミングと称す)を検出する。なお、ガイドメロディ音高に基本周波数遷移f0v(t)を照合する手法としては、特開2005−107330号公報に記載された周知の手法を用いれば良い。
さらに、その検出した歌唱時切替タイミングと、ガイドメロディ音高中での音高切替タイミングとの差を時間遅延量tl(k)として算出する。
このように、ガイドメロディ音高と、基本周波数遷移f0v(t)との照合から、時間遅延量tl(k)の算出までの一連の流れを、カラオケ楽曲の時間進行に従って(即ち、kが1からkが最大となるまで、kを順次増加させながら)繰り返す。これにより、全構成音についての時間遅延量tl(k)が求められる。
つまり、S150では、該当カラオケ楽曲の歌唱時に、各構成音それぞれについて実際に歌唱を開始したとみなせるタイミングとして、歌唱切替時タイミングを特定すると共に、ガイドメロディ音高中での音高切替タイミングからの歌唱時切替タイミングの遅れを求めている。
続くS160では、各構成音に対してユーザが実際に歌唱した期間を対応期間T(k)とし、その対応期間T(k)それぞれにおけるビブラートでの発声の安定度合いを表す歌唱安定度vsi(k)を導出すると共に、各構成音に対応する音高f毎に歌唱安定度vsi(f)を集計した結果である歌唱安定度分布を導出する安定度分布導出処理を実行する。
なお、本実施形態における歌唱安定度分布とは、図6に示すように、構成音に対応する音高fを横軸とし、集計された歌唱安定度vsi(k)(以下、集計安定度mvsi(f))を縦軸としたマップである。
さらに、S170にて、記憶部21の音声データ格納領域に格納されている全音声データに対して、S110からS160までの処理(ここでは、規定処理と称す)を実行したか否かを判定する。
そして、判定の結果、全音声データに対して規定処理を実行していなければ、S110へと戻り、そのS110にて、記憶部21の音声データ格納領域に格納されている全音声
データの中から、規定処理を未実行である音声データを取得して、S120へと進む。
一方、S170での判定の結果、全音声データに対して規定処理を実行済であれば、S180へと進む。
そのS180では、安定度分布導出処理(S160)にて導出した歌唱安定度分布に従って、歌唱音域を特定する。
具体的に、本実施形態では、図6に示すような歌唱安定度分布上において集計安定度mvsi(f)が、予め規定された規定値以上である最低音高から最高音高までの範囲、即ち、集計安定度mvsi(f)が規定値以上である最低基本周波数から最高基本周波数までの周波数帯を歌唱音域としている。
なお、本実施形態における規定値は、歌唱安定度分布上における集計安定度mvsi(f)の最大値Mに対して予め規定された割合A(例えば、最大値の半分や、1/3等)として規定されている(規定値=M×A)。
続く、S190では、S180で特定した歌唱音域を表示部23及びスピーカ27を介してユーザに報知すると共に、その特定した歌唱音域を記憶部21及びサーバ30に記憶する特定音域利用処理を実行する。さらに、本実施形態の特定音域利用処理では、全構成音中の最低音高と最高音高との両方が、S180で特定された歌唱音域内であるカラオケ楽曲を全カラオケ楽曲の中から検出し、その検出したカラオケ楽曲を推奨曲としてユーザに提案する。
そして、その後、本歌唱音域特定処理を終了する。
〈安定度分布導出処理〉
ここで、図3は、安定度分布導出処理の処理手順を表したフローチャートである。
図3に示すように、この安定度分布導出処理は、歌唱音域特定処理のS160にて起動されると、まず、S310にて、各対応期間T(k)における基本周波数遷移f0v(t)を歌唱区間f0vn(t)として抽出する。
具体的に、本実施形態では、まず、各構成音についての歌唱時切替タイミングに基づいて、各対応期間T(k)を導出する。
なお、対応期間T(k)は、k番目の構成音に対する歌唱時切替タイミング(即ち、楽音出力開始時間st(k)+時間遅延量tl(k))を、その対応期間T(k)の開始タイミングとする。さらに、対応期間T(k)の時間長tt(k)は、k番目の構成音に対する歌唱時切替タイミングと、k+1番目の構成音に対する歌唱時切替タイミングとの差として求められ、0[s]から、k番目の構成音の音価(即ち、構成音を出力している時間)len(k)[s]までの範囲内となる。すなわち、k番目の構成音について、ユーザが全期間にわたって歌唱できれば、時間長tt(k)は構成音の音価len(k)[s]となり、ユーザが全期間にわたって歌唱できなければ、時間長tt(k)は0[s]となる。
そして、その導出された各対応期間T(k)における基本周波数遷移f0v(t)を歌唱区間f0vn(t)として、下記(1)式に従って抽出する。ただし、(1)式中のst(k)+tl(k)+tt(k)が対応期間T(k)に相当する。
これにより抽出された歌唱区間f0vn(t)は、図5(A)に示すように、構成音に対する発声時間の遅れを考慮したものとなり、各構成音に対してユーザが実際に歌唱した期間に対応した基本周波数遷移f0v(t)となる。
続く、S320では、S310で抽出した歌唱区間f0vn(t)それぞれ(即ち、基本周波数の時間遷移)を周波数解析(本実施形態では、FFT)し、その結果を表すビブラートスペクトルを導出する。
なお、下記(2)式は、歌唱区間f0vn(t)のフーリエ変換を表すもの(以下、振幅値P0(g)とする)である。
つまり、S320にて導出されるビブラートスペクトルは、歌唱区間f0vn(t)に対応する各対応期間T(k)をユーザが歌唱した時のビブラートの振動数成分(以下、振動数成分それぞれをビブラート振動数gとする)の分布を表すものとなる。より具体的には、ビブラートスペクトルは、図5(B)に示すように、各ビブラート振動数g毎に、そのビブラート振動数gの強度を表す振幅値P0(g)が対応付けられたものである。
そして、S330では、S320で導出されたビブラートスペクトル(即ち、周波数解析の結果)それぞれに基づいて、歌唱区間f0vn(t)に対応する対応期間T(k)でのビブラートによる発声の安定度合い、即ち、歌唱安定度vsi(k)を導出する。
ここで、図5(c)は、歌唱安定度を導出する具体的な方法を示した説明図である。
具体的に、本実施形態のS330では、ビブラートスペクトルにおける振動数ピークを検出し、さらに、検出した振動数ピークの中から、振幅値P0(g)が最大値P0mとなる振動数ピークを最大振動数ピークとして検出する。なお、振動数ピークを検出する手法としては、ビブラートスペクトル上において、予め設定された設定閾値を超える振動数のピーク点(即ち、極大点)を振動数ピークとして検出すれば良い。
そして、最大振動数ピークの振幅値P0(g)(即ち、最大値P0m)を1/2乗した値を実効値とし、最大振動数ピークの周波数成分(以下、ピークビブラート振動数g0とする)を挟み、かつ振幅値P0(g)が実効値となるビブラート振動数の帯域(即ち、幅)を実効帯域gwとして求める。
さらに、ピークビブラート振動数g0を実効帯域gwで除することにより、対応期間T(k)に対応する構成音についての歌唱安定度vsi(k)として、先鋭度Q(Q=gm/gw)を導出する。
なお、安定した(理想的な)ビブラートにより歌唱されていれば、ビブラートスペクトル上において検出される振動数ピークは、一つだけであり、実効帯域gwは小さなもの、即ち、最大振動数ピークは鋭くなる。このため、ビブラートにより安定して歌唱されていれば、歌唱安定度vsi(k)は大きな値となる。
つまり、S330では、S320にて導出されたビブラートスペクトルに基づいて、最大振動数ピークの先鋭度Qを歌唱安定度vsi(k)として導出する。
続く、S340では、S330で導出した歌唱安定度vsi(k)に基づいて、歌唱安定度分布を生成する。
具体的に、本実施形態では、下記の(3)式を用いて、対応期間T(k)に対応する構成音の音高毎に歌唱安定度vsi(k)それぞれを集計し、集計安定度mvsi(f)を導出する。
ただし、(3)式において、fは、構成音の音高であり、k'は、音高fと等しい構成音を表す識別番号(上述したk番目や、k+1番目に相当)の集合、K0は、音高fが等しい構成音の総数である。
つまり、集計安定度mvsi(f)は、音高fと等しい構成音についての全歌唱安定度vsi(k)を、対応する構成音の音価len(k)が長いほど大きな値となるように重み付けして集計し、さらに、音高fと等しい構成音の総数K0にて除した、即ち、正規化したものである。
なお、集計安定度mvsi(f)は、該当カラオケ楽曲中に登場する全音高fに対して導出される。そして、その導出した集計安定度mvsi(f)それぞれの分布を、歌唱安定度分布として導出する。
ただし、本実施形態では、S340へと進んだ回数が二回目以降である場合、そのサイクル(即ち、今回のS340)にて導出した集計安定度mvsi(f)を、前サイクルにて(即ち、前回のS340以前に)導出された集計安定度mvsi(f)に積算する。つまり、本実施形態における歌唱安定度分布には、各音声データから導出される集計安定度mvsi(f)が全て積算されている。
そして、その後、歌唱音域特定処理のS170へと戻る。
以上説明したように、本実施形態の歌唱音域特定処理(安定度分布導出処理)では、各構成音に対してユーザが実際に歌唱した対応期間T(k)についての基本周波数遷移f0v(t)(即ち、歌唱区間f0vn(t))を周波数解析することでビブラートスペクトルを導出する。さらに、歌唱音域特定処理では、そのビブラートスペクトルから最大振動数ピークを検出して、最大振動数ピークの先鋭度Qを歌唱安定度vsi(k)として導出する。
このとき、安定したビブラートにより発声されていれば、ビブラートスペクトル上において、実効帯域gwが狭くなるので、先鋭度Qは大きな値となり、安定したビブラートにより発声されていなければ、ビブラートスペクトル上において、実効帯域gwが広くなり、先鋭度Qは小さな値となる。
このことから、本実施形態の歌唱音域特定処理において、構成音の音高f毎に歌唱安定度vsi(k)を集計した集計安定度mvsi(f)を導出すると、ビブラートにより安定して発声可能である音高fについての集計安定度mvsi(f)が大きくなり、ビブラートにより安定して発声できない音高fについての集計安定度mvsi(f)が小さくなる。
[実施形態の効果]
つまり、本実施形態のカラオケ装置20では、ビブラートによる発声方法でユーザが安定して歌唱できる音高の範囲を歌唱音域として特定している。
そして、ユーザが無理をして歌唱した場合、ビブラートによる発声を安定させることが困難であるため、本実施形態のカラオケ装置20(即ち、音域特定システム)によれば、ユーザが無理をすること無く歌唱可能な音域を特定することができる。
また、本実施形態の歌唱音域特定処理では、集計安定度mvsi(f)を正規化した値として導出している。つまり、歌唱の上手なユーザほど、構成音の音高それぞれについての集計安定度mvsi(f)が最大値に近い値となり、歌唱の下手なユーザほど、最大値と、最大値に対応しない音高それぞれについての集計安定度mvsi(f)との値の差が大きくなる。
さらに、本実施形態の歌唱音域特定処理では、対応する対応期間T(k)での構成音の音価len(k)が長いほど大きな値となるように重み付けして、集計安定度mvsi(f)を導出している。このため、本実施形態の歌唱音域特定処理では、構成音の音価(即ち、構成音を出力する時間長)が長いほど、その構成音に対してビブラートにより安定して発声を実施することが難しくなることを考慮した集計安定度mvsi(f)が導出される。
これらの結果、本実施形態の歌唱音域特定処理によれば、ユーザの歌唱レベル(技量)に拘わらず、ユーザの歌唱音域を適切に判定すること、言い換えれば、ユーザが無理すること無く発声可能な音域(即ち、歌唱音域)を、より確実に特定することができる。
そして、本実施形態のカラオケ装置20によれば、ユーザが無理することなく発声可能な歌唱音域内で音高が変化するカラオケ楽曲を推奨曲としてユーザに提案しているため、ユーザにカラオケをより楽しませることができる。
[その他の実施形態]
以上、本発明の実施形態について説明したが、本発明は、上記実施形態に限るものではなく、本発明の要旨を逸脱しない範囲において、様々な態様にて実施することが可能である。
例えば、上記実施形態では、歌唱音域特定処理の起動タイミングを、一人のユーザが規定数分のカラオケ楽曲を歌唱した場合としていたが、歌唱音域特定処理の起動タイミングは、上記実施形態に限るものではなく、操作受付部24を介してユーザから起動指令を受け付けた場合であっても良いし、一つのカラオケ楽曲に対して歌唱が終了した時であっても良い。つまり、歌唱音域特定処理の起動タイミングは、処理対象である音声データが存在していれば、どのようなタイミングであっても良い。
また、上記実施形態の安定度分布導出処理におけるS330では、複数の周波数ピークが検出された場合、その検出された周波数ピークの中から最大周波数ピークを検出して、最大周波数ピークに基づいて歌唱安定度vsi(k)を算出していた。しかし、安定度分布導出処理におけるS330において、複数の周波数ピークが検出された場合、ビブラートによる発声で安定して歌唱できていないものとして、歌唱安定度vsi(k)の算出を実施しないように構成しても良い。
さらに、上記実施形態の安定度分布導出処理におけるS340では、集計安定度mvsi(f)を導出する時の正規化の方法として、歌唱安定度vsi(k)を集計した結果を構成音の総数で除していたが、正規化の方法は、これに限るものはなく、例えば、同一音高についての構成音の総演奏時間で除しても良いし、その他の方法でも良い。
さらには、S340において、集計安定度mvsi(f)を導出する時に正規化を実行しなくとも良い。
また、上記実施形態の安定度分布導出処理におけるS340では、集計安定度mvsi(f)を導出する時に、構成音の音価が長いほど大きな重みを付して歌唱安定度vsi(k)を集計していたが、重み付けは実行しなくとも良い。
そして、上記実施形態の安定度分布導出処理におけるS340では、構成音の音高毎に歌唱安定度vsi(k)それぞれを集計することで集計安定度mvsi(f)を導出していたが、集計安定度mvsi(f)の導出方法は、これに限るものではなく、例えば、下記の(4)式に基づいて導出しても良い。
ただし、(4)式におけるk'は、音高fと等しい構成音、かつその構成音の音価(即ち、音声を出力する時間長)が予め設定された設定時間以上であることを表す構成音の識別番号(上述したk番目や、k+1番目に相当)の集合である。
つまり、集計安定度mvsi(f)は、構成音に対応する音符の種類(例えば、二分音符や、四分音符など)毎に、歌唱安定度vsi(k)それぞれを集計したものでも良い。
この場合、ユーザがビブラートにて安定して発声可能な構成音の音価(時間長)を特定することができる。
また、上記実施形態における特定音域利用処理では、特定した歌唱音域をユーザに報知したり、特定した歌唱音域に基づくカラオケ楽曲を推奨曲としてユーザに提案したりしていたが、特定音域利用処理にて実行される処理内容は、これに限るものではない。例えば、特定した歌唱音域が狭いほど、採点を厳しくするように採点に用いても良い。
さらに、上記実施形態の歌唱音域特定処理では、歌唱安定度分布を、構成音に対応する音高と、集計安定度mvsi(k)とを対応付けたマップとして導出していたが、歌唱安定度分布は、マップに限るものではなく、構成音に対応する音高と、集計安定度mvsi(k)とが対応付けられたものであれば、どのようなものであっても良い。
なお、上記実施形態では、カラオケ装置20の制御部28にて歌唱音域特定処理を実行していたが、歌唱音域特定処理は、サーバ30のマイクロコンピュータにて実行されても良い。ただし、この場合、音声データは、サーバ30の記憶装置に格納されている必要がある。
[本発明と実施形態との対応]
ところで、歌唱音域特定処理のS110を実行することで得られる機能が、本発明の音声信号取得手段に相当し、S120,S130を実行することで得られる機能が、本発明の歌唱データ生成手段に相当する。また、歌唱音域特定処理のS150、及び安定度分布導出処理のS310を実行することで得られる機能が、本発明の歌唱区間特定手段に相当し、安定度分布導出処理のS320,S330を実行することで得られる機能が、本発明の安定度導出手段に相当する。さらに、安定度分布導出処理のS340、及び歌唱音域特定処理のS180を実行することで得られる機能が、本発明の音域特定手段に相当する。
カラオケシステムの概略構成を示すブロック図である。 歌唱音域特定処理の処理手順を示すフローチャートである。 安定度分布導出処理の処理手順を示すフローチャートである。 歌唱音域特定処理の処理内容を模式的に示した模式図である。 安定度分布導出処理の処理内容を模式的に示した模式図である。 歌唱音域の特定方法を説明するための説明図である。
符号の説明
1…カラオケシステム 20…カラオケ装置 21…記憶部 22…通信部 23…表示部 24…操作受付部 25…音声入出力部 26…マイクロホン 27…スピーカ 28…制御部 28a…ROM 28b…RAM 28c…CPU 30…サーバ

Claims (5)

  1. ユーザによる楽曲の歌唱時における音声信号を取得する音声信号取得手段と、
    前記音声信号取得手段で取得した音声信号を周波数解析することで、歌唱の音高の推移を表す歌唱データを生成する歌唱データ生成手段と、
    前記楽曲を構成する構成音それぞれの音高及び音価を表す楽曲データを取得する楽曲データ取得手段と、
    前記歌唱データ生成手段で生成した歌唱データを、前記楽曲データと照合することで、前記構成音それぞれに対応する前記歌唱データ中の区間である歌唱区間を特定する歌唱区間特定手段と、
    前記歌唱区間特定手段で特定された歌唱区間それぞれでのビブラートの安定度合いを表す歌唱安定度を導出する安定度導出手段と、
    前記安定度導出手段で導出された歌唱安定度を、それぞれの歌唱区間に対応する構成音の音高毎に集計し、その集計された歌唱安定度を集計安定度とし、前記集計安定度が、予め規定された規定値以上である最低音高から最高音高までの範囲を、前記ユーザが歌唱可能な歌唱音域として特定する音域特定手段と
    を備えることを特徴とする音域特定システム。
  2. 前記音域特定手段は、
    前記集計安定度を正規化すると共に、
    その正規化された前記集計安定度の最大値に対して予め規定された割合を前記規定値とすることを特徴とする請求項1に記載の音域特定システム。
  3. 前記音域特定手段は、
    前記歌唱区間に対応する構成音の音価が長いほど、前記歌唱安定度に大きな重みを付して集計することを特徴とする請求項1または請求項2に記載の音域特定システム。
  4. 前記安定度導出手段は、
    前記歌唱データを歌唱区間毎に周波数解析することで音高を検出し,音高の時間変化に含まれるビブラート振動成分から振動数ピークの先鋭度を前記歌唱安定度として導出することを特徴とする請求項1ないし請求項3のいずれかに記載の音域特定システム。
  5. コンピュータに、
    ユーザによる楽曲の歌唱時における音声信号を取得する音声信号取得手順と、
    前記音声信号取得手順で取得した音声信号を周波数解析することで、歌唱の音高の推移を表す歌唱データを生成する歌唱データ生成手順と、
    前記楽曲を構成する構成音それぞれの音高及び音価を表す楽曲データを取得する楽曲データ取得手順と、
    前記歌唱データ生成手順で生成した歌唱データを、前記楽曲データと照合することで、前記構成音それぞれに対応する前記歌唱データ中の区間である歌唱区間を特定する歌唱区間特定手順と、
    前記歌唱区間特定手順で特定された歌唱区間それぞれでのビブラートの安定度合いを表す歌唱安定度を導出する安定度導出手順と、
    前記安定度導出手順で導出された歌唱安定度を、それぞれの歌唱区間に対応する構成音の音高毎に集計し、その集計された歌唱安定度が、予め規定された規定値以上である最低音高から最高音高までの範囲を、前記ユーザが歌唱可能な歌唱音域として特定する音域特定手順と
    を実行させることを特徴とするプログラム。
JP2008254025A 2008-09-30 2008-09-30 音域特定システム、プログラム Active JP5125957B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008254025A JP5125957B2 (ja) 2008-09-30 2008-09-30 音域特定システム、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008254025A JP5125957B2 (ja) 2008-09-30 2008-09-30 音域特定システム、プログラム

Publications (2)

Publication Number Publication Date
JP2010085655A true JP2010085655A (ja) 2010-04-15
JP5125957B2 JP5125957B2 (ja) 2013-01-23

Family

ID=42249678

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008254025A Active JP5125957B2 (ja) 2008-09-30 2008-09-30 音域特定システム、プログラム

Country Status (1)

Country Link
JP (1) JP5125957B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015031729A (ja) * 2013-07-31 2015-02-16 ブラザー工業株式会社 情報処理装置、及びプログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108538309B (zh) * 2018-03-01 2021-09-21 杭州小影创新科技股份有限公司 一种歌声侦测的方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000242285A (ja) * 1999-02-22 2000-09-08 Masaki Nakayama 計算機による声域測定とその結果を反映したカラオケシステム
JP2003015672A (ja) * 2001-06-29 2003-01-17 Daiichikosho Co Ltd 声域告知機能付きカラオケ装置
JP2004102146A (ja) * 2002-09-12 2004-04-02 Taito Corp ビブラート採点機能を有するカラオケ採点装置
JP2005107330A (ja) * 2003-09-30 2005-04-21 Yamaha Corp カラオケ装置
JP2005107329A (ja) * 2003-09-30 2005-04-21 Yamaha Corp カラオケ装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000242285A (ja) * 1999-02-22 2000-09-08 Masaki Nakayama 計算機による声域測定とその結果を反映したカラオケシステム
JP2003015672A (ja) * 2001-06-29 2003-01-17 Daiichikosho Co Ltd 声域告知機能付きカラオケ装置
JP2004102146A (ja) * 2002-09-12 2004-04-02 Taito Corp ビブラート採点機能を有するカラオケ採点装置
JP2005107330A (ja) * 2003-09-30 2005-04-21 Yamaha Corp カラオケ装置
JP2005107329A (ja) * 2003-09-30 2005-04-21 Yamaha Corp カラオケ装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015031729A (ja) * 2013-07-31 2015-02-16 ブラザー工業株式会社 情報処理装置、及びプログラム

Also Published As

Publication number Publication date
JP5125957B2 (ja) 2013-01-23

Similar Documents

Publication Publication Date Title
KR100949872B1 (ko) 악곡 연습 지원 장치, 악곡 연습 지원 장치의 제어 방법, 악곡 연습 지원 장치를 제어하는 제어 방법을 컴퓨터로 실행시키는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체
JP6060867B2 (ja) 情報処理装置,データ生成方法,及びプログラム
KR20070099501A (ko) 노래 학습 시스템 및 방법
KR20060112633A (ko) 노래 평가 시스템 및 방법
JP2019061135A (ja) 電子楽器、電子楽器の楽音発生方法、及びプログラム
JP5125958B2 (ja) 音域特定システム、プログラム
JP6288197B2 (ja) 評価装置及びプログラム
JP5125957B2 (ja) 音域特定システム、プログラム
JP6102076B2 (ja) 評価装置
WO2017057531A1 (ja) 音響処理装置
JP6098422B2 (ja) 情報処理装置、及びプログラム
JP2017181793A (ja) 音響処理装置、及びプログラム
JP2006251697A (ja) カラオケ装置
JP6024130B2 (ja) 音声評価装置
JP5125956B2 (ja) 音域特定システム、プログラム
JP6406273B2 (ja) カラオケ装置,及びプログラム
JP6252420B2 (ja) 音声合成装置、及び音声合成システム
JP6260565B2 (ja) 音声合成装置、及びプログラム
JP5245973B2 (ja) 採点装置,プログラム
JP2013076887A (ja) 情報処理システム,プログラム
JP4048249B2 (ja) カラオケ装置
JP6365483B2 (ja) カラオケ装置,カラオケシステム,及びプログラム
JP5805474B2 (ja) 音声評価装置,音声評価方法,及びプログラム
JP6011506B2 (ja) 情報処理装置,データ生成方法,及びプログラム
JP5186793B2 (ja) カラオケ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110314

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120927

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121002

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121015

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5125957

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151109

Year of fee payment: 3