JP2005055612A - ピッチ検出方法 - Google Patents

ピッチ検出方法 Download PDF

Info

Publication number
JP2005055612A
JP2005055612A JP2003285342A JP2003285342A JP2005055612A JP 2005055612 A JP2005055612 A JP 2005055612A JP 2003285342 A JP2003285342 A JP 2003285342A JP 2003285342 A JP2003285342 A JP 2003285342A JP 2005055612 A JP2005055612 A JP 2005055612A
Authority
JP
Japan
Prior art keywords
value
standard deviation
pitch
bpf
filter
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
JP2003285342A
Other languages
English (en)
Other versions
JP4360527B2 (ja
Inventor
Hideki Omori
秀樹 大森
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.)
Korg Inc
Original Assignee
Korg Inc
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 Korg Inc filed Critical Korg Inc
Priority to JP2003285342A priority Critical patent/JP4360527B2/ja
Publication of JP2005055612A publication Critical patent/JP2005055612A/ja
Application granted granted Critical
Publication of JP4360527B2 publication Critical patent/JP4360527B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

【課題】音声信号のピッチを正確に検出する方法を提供する。
【解決手段】BPF50、51、…52に対して並列的に所定数個のサンプリングデータを供給し、各バンドパスフィルタからの出力の最大値の対数値を求める。次いで、BPFの数だけ求められた対数値を参照して、中心周波数が最も低く設定されているBPF50に対する対数値から順に見て、対数値の極小値と極大値との差が最も大きくなる対数値に対応するバンドパスフィルタを決定する。そして、このバンドパスフィルタに前記所定数個のサンプリングデータを供給した時に出力されたフィルタ出力データから全波整流波形を生成し、この全波整流波形のピーク値の正規化標準偏差を求め、これがしきい値TH以下の場合には、フィルタ出力データが零となる周期からピッチを求める。
【選択図】 図1

Description

本発明は、音声信号のピッチを検出する方法に関する。
音声信号のピッチ(基音の周波数)を検出する手法は、従来より、様々なものが提案されている(例えば、特許文献1参照)。例えば、音声信号の相関を求めることなく少ない演算量でピッチ検出を行う手法として以下のものが提案されていた。先ず、音声信号をローパスフィルタに供給し、このローパスフイルタからのフィルタ出力を単位時間毎に切り出し、次いで、ローカルマキシマム(極大点)とローカルミニマム(極小点)を抽出し、ローカルマキシマムに対して正の符号を付加する一方、ローカルミニマムに対しては負の符号を付加する。さらに、正の符号を付加されたローカルマキシムと負の符号を付加されたローカルミニマムの二者を用いて、それぞれの時間間隔を求め、それぞれ求めた時間間隔からヒストグラムを作成し、ヒストグラムの最頻値からピッチ周期を決定する。ピッチが正確に検出できると、ピッチシフトやタイムストレッチ等の処理を正確に実行することができ、各種の音楽用装置等への応用が可能になる。
特開平11−175097号公報(第5−7頁、第7図)
しかしながら、従来のピッチ検出手法によれば、倍音を除去するローパスフィルタのカットオフ周波数がピッチの検出精度に大きな影響を与えるものとなっていたため、このカットオフ周波数の設定を極めて適切なものとする必要があった。また、子音等のピッチがはっきりしない部分における処理手法については技術開示がなされていないため、子音等のピッチが突飛な値になってしまうことが有り得、ピッチ検出精度を確保することが難しかった。つまり、従来手法にあっては、一般に振幅レベルの高い子音やフォルマント等がピッチ検出に与える影響を考慮したものとはなっていないため、これらがピッチ検出精度の劣化に影響してしまうといった問題があった。このため、ピッチシフトやタイムストレッチ等の処理を正確に実行することができず、各種の音楽用装置等への応用が可能となるピッチ検出手法の実現が望まれていた。
本発明は、かかる従来の課題を解決するためになされたもので、音声信号のピッチを正確に検出する方法を提供することを目的とする。
上記目的を達成するために、本発明は、音声信号のピッチを検出する方法であって、
ピッチ検出に関する処理を行う処理部が、
夫々の中心周波数が所定の関係を満たすようにして順次高くなるように設定されている複数のバンドパスフィルタの夫々に対して並列的に所定数個のサンプリングデータを供給する第1の工程と、
各バンドパスフィルタからの出力の最大値の対数値を求める第2の工程と、
前記バンドフィルタの数だけ求められた対数値を参照して、中心周波数が最も低く設定されているバンドパスフィルタに対する対数値から順に見て、対数値の極小値と極大値との差が最も大きくなる対数値に対応するバンドパスフィルタを決定する第3の工程と、
このバンドパスフィルタに前記所定数個のサンプリングデータを供給した時に出力されたフィルタ出力データから全波整流波形を生成する第4の工程と、
この全波整流波形において上に凸の部分(ピーク部)の値であるピーク値の標準偏差を求め、この標準偏差をピーク値の平均値で除算した正規化標準偏差を求める第5の工程と、
この正規化標準偏差が所定しきい値以下の場合には、前記フィルタ出力データが零となる周期からピッチを求める第6の工程と、を含む処理を実行することを特徴とするようにした。
また、この請求項1に記載のピッチ検出方法において、
前記処理部が、前記正規化標準偏差が所定値以下でない場合には、次の所定数個のサンプリングデータを用いて、前記第1、第2、第3、第4、第5の工程を繰り返して、新たな正規化標準偏差を求める工程と、
この新たな正規化標準偏差が前記所定しきい値以下となった場合には、前記繰り返された第3の工程で決定されたバンドパスフィルタに対して、既に前回の第1の工程によって当該バンドパスフィルタから出力されたフィルタ出力データが零となる周期からピッチを求める工程と、を含む処理を更に実行することを特徴とするようにしても良い。
本発明によれば、音声信号のピッチを正確に検出することが可能になるという効果が得られる。
以下、本発明を実施するための最良の形態を図面を参照しつつ説明する。図1は本発明の最良の実施の形態のピッチ検出装置100の構成図である。ピッチ検出装置100は、外部から与えられた音声信号を電気信号として出力するマイクロフォン10と、このアナログの音声電気信号をアナログ・デジタル変換するA/D変換器20と、ピッチ検出に関する処理を行う処理部30と、サンプリングデータ用メモリ30と、を備えている。外部から与えられた音声信号はマイクロフォン10によってアナログの音声電気信号に変換され、更に、A/D変換器20によってアナログ・デジタル変換される。そして、処理部40は、このサンプリングされたデジタル信号を1000個1単位(サンプリングレートは例えば44.1kHz)としてサンプリングデータ用メモリ30に格納していくように構成されている。なお、処理部40はサンプリングデータ用メモリ30からサンプリングデータを獲得して所要の処理を行うようになっている。
また、このピッチ検出装置100は、27個のBPF(バンドパスフィルタ)50、BPF51、…、BPF52が設けられ、処理部40はサンプリングデータを各BPFに並列的(同じタイミング)に供給可能に構成されている。そして、各BPFから出力されるフィルタ出力はフィルタデータ用メモリ60に順次蓄積されるように構成されている。なお、BPF50、BPF51、…、BPF52の夫々からのフィルタ出力は、フィルタデータ用メモリ60のメモリ領域60a、メモリ領域60b、…、メモリ領域60cに夫々格納され、各BPF50、51…、52のフィルタ出力に対して処理が施し易いようなメモリ構成となっている。
そして、各BPF50、51、…、52の中心周波数は、BPF50が最も低く、順に、「1/4オクターブ」間隔で設定され、BPF52が最も高く設定されている。即ち、BPF50(CH0:チャンネル0)の中心周波数をf0とすると、f0の、2の4乗根倍が、BPF51(CH1:チャンネル1)の中心周波数f1となっており、次に、不図示のチャンネル2のBPFの中心周波数f2は、f1の、2の4乗根倍となっている。かくして、BPF52(CH26:チャンネル26)の中心周波は、f0に「2の4乗根の26乗」を乗じたものとなっている。
(動作)
次に、図2、図3、図4等を参照してピッチ検出装置100による動作を説明する。今、サンプリングデータ用メモリ30には、既に、1000個を1単位として複数単位のサンプリングデータが格納されているものとする。先ず、ステップS200において、処理部40は、最初の1単位1000個のサンプリングデータをBPF50、51、…、52に対して並列的に(同時に)供給する。このサンプリングデータの供給によって、各BPF50、BPF51、…、BPF52から出力されたフィルタ出力は、夫々、フィルタデータ用メモリ60のメモリ領域60a、60b、…、60cに蓄積されることになる。
次いで、ステップS205において、処理部40は、BPF50、BPF51、…、BPF52のフィルタ出力の最大値を求め、これに「1」を加算してその対数(常用対数)を求める。ここで「1」を加算するのは対数の真数を正とするためである。かくして、BPF50、BPF51、…、BPF52に対するフィルタ出力の対数値が求められる。そして、ステップS210において、処理部40は、基音(基音の周波数が「ピッチ」)に対応するBPFを決定する。
図3はステップS210の処理の説明図である。図3には、ステップS205において求めた、BPF50(CH0)、BPF51(CH1)、…、BPF52(CH26)に対するフィルタ出力の対数値が図示されている。そして、BPFの数(本例では27個)だけ求められた対数値を参照して、中心周波数が最も低く設定されているバンドパスフィルタであるBPF50(CH0)に対する対数値から順に見て、対数値の極小値と極大値との差が最も大きくなる対数値に対応するバンドパスフィルタを決定する。図3の例では、対数値の極小値と極大値との差は、符号A、B、Cで示す3つ存在するが、その内、極小値と極大値の差が最も大きくなる(符号A)対数値に対応するバンドパスフィルタは、図1では不図示のCH2のBPFであると決定する。
次いで、ステップS215において、処理部40は、この決定したBPFに対するフィルタ出力をフィルタデータ用メモリ60から獲得して、これを全波整流波形とする。図4には全波整流波形の一例を示している。BPF出力は、通常、正弦波状であるため、BPF出力の正の部分はそのままの波形となり、一方、BPFの負の部分は正の部分を0点を基準として折り返した点線で示すような波形となる。
次いで、ステップS220において、処理部40は以下のようにしてこの全波整流波形から正規化標準偏差を求める。先ず、この全波整流波形の上に凸の部分(ピーク部)の値であるピーク値a1、a2、…、a10の平均値を求める。次いで、この平均値と各ピーク値との差の2乗の総和の平方根を求め標準偏差とし、更に、この標準偏差を上記平均値で除算して正規化標準偏差を求める。この正規化標準偏差値が小さいほどピーク値のばらつきが少なく安定した母音部分であると言える。
そして、ステップS225において、処理部40は、この正規化標準偏差が所定しきい値TH以下か否かを判定する。この正規化標準偏差が所定しきい値TH以下の場合(Yes)には、ステップS230に移行する。そして、ステップS230では、ステップS210にて決定したBPFにサンプリングデータを供給した時に得られたフィルタ出力データが零となる周期を求めこれからピッチを求める。以上のような処理を行えば、正規化標準偏差が大きい子音の部分ではピッチ検出を行なわないことになり、更に、隣接するBPF間の出力レベル差を基音の検出に用いることでフォルマント等の効果により生じる基音より大きなパワーをもつ倍音の影響を避けることができる。かくして、子音の影響やフォルマント等の影響を受けないでピッチを正確に求めることが可能になる。なお、通常の考え方では、零クロス点の間隔について統計を取った方がピッチ安定性を判断しやすいように思えるが、ピーク値についての統計を取った方が有効であることを確認した。これはBPFの出力は、既にかなり狭い帯域の信号であるので零クロス間隔はほぼ一定であり、ばらつきが少ないのに対して、振幅の方は子音部分等では大きく変化するために、周期の信頼性としては振幅を評価するほうが適しているためである。
さて、一方、ステップS225において、処理部40によって正規化標準偏差が所定しきい値TH以下でないと判定された場合(No)には、ステップS235に移行し、処理部40は次の1単位である次の1000個のサンプリングデータをBPF50、BPF51、…、BPF52に供給する。そして、ステップS205からステップS220までの処理を繰り返して実行し、ステップS225にて、今回の正規化標準偏差が所定しきい値以下であると判定された場合(Yes)には、ステップS230において、ピッチを求める。この際、繰り返して実行されたステップS210にて決定されたBPFに対応する、最初の1単位の1000個のフィルタ出力をフィルタデータ用メモリから獲得して、ステップS230を実行してピッチを求める。
例えば、1単位1000サンプル毎にデータを処理する際に、1単位あるいは数単位に渡って正規化標準偏差がしきい値を上回ったためピッチ情報を検出できなかった場合(この処理対象区間を区間Aと呼ぶ)において、その後初めて正規化標準偏差値がしきい値を下回った1単位1000サンプルの処理が行われた時点(この処理対象区間を区間Bと呼ぶ)で以下の処理を行う。区間Aにおいて基音候補とされていたBPFチャンネル情報は無視し、区間Bにおいて選ばれたBPFと同じチャンネルのBPFが区間Aにおいて出力していた結果から零クロス点を検出し、その結果から区間Aでのピッチ情報を取得する。もし、区間Aの後に正規化標準偏差値がしきい値を下回る区間(区間B)が現れなかった場合は、処理対象区間Aに先行して正規化標準偏差値がしきい値を下回っていた処理単位において基音候補として選ばれていたBPFチャンネルの情報を元に、区間Aでのピッチ検出を行っても良い。このようにしてより一層正確なピッチ検出をすることが可能である。
以上説明してきた本発明の実施の形態は、フォルマント等の影響で基音より倍音のパワーが強い場合にも対応するために、通過帯域の中心周波数が低い側から高い側へと順次並ぶように複数のBPFを設け、夫々のBPF出力について対数化した出力レベルの差を基音の検出に用いた。これは倍音について見ると、隣接するBPF間の出力レベル差は、より高次側になるにつれて小さくなる傾向があることによる。実際、通常の歌声の場合には、低域側から見ていった場合に現れる対数化したBPF出力の極小値から、次に現れる対数化したBPF出力の極大値までの高低差を測ると、この値が最も大きい箇所において、対数化したBPF出力の極大値を示すBPFの通過帯域に基音が存在することを確認した。また、子音の影響により突飛なピッチを出力してしまうことを避けるために、一定区間内において基音を含む通過帯域を持つBPF出力の絶対値をとり、その一定区間内に含まれる波形ピーク値の高さの標準偏差を、当該区間内でのピークの平均で除算した正規化標準偏差を計算した。正規化標準偏差がしきい値を下回る、ピッチが安定した部分のみを選んでピッチを測定することにより、子音を棄却した。
以上説明してきたように、本発明によれば、音声信号のピッチを正確に検出する方法を提供することができる。
ピッチ検出装置100の構成図である。 装置の全体動作を説明するためのフローチャートである。 動作例を説明する説明図である。 動作例を説明する説明図である。
符号の説明
10 マイクロフォン
20 A/D変換器
30 サンプリングデータ用メモリ
40 処理部
50 BPF(バンドパスフィルタ)
51 BPF(バンドパスフィルタ)
52 BPF(バンドパスフィルタ)
60 フィルタデータ用メモリ
100 ピッチ検出装置

Claims (2)

  1. 音声信号のピッチを検出する方法であって、
    ピッチ検出に関する処理を行う処理部が、
    夫々の中心周波数が所定の関係を満たすようにして順次高くなるように設定されている複数のバンドパスフィルタの夫々に対して並列的に所定数個のサンプリングデータを供給する第1の工程と、
    各バンドパスフィルタからの出力の最大値の対数値を求める第2の工程と、
    前記バンドフィルタの数だけ求められた対数値を参照して、中心周波数が最も低く設定されているバンドパスフィルタに対する対数値から順に見て、対数値の極小値と極大値との差が最も大きくなる対数値に対応するバンドパスフィルタを決定する第3の工程と、
    このバンドパスフィルタに前記所定数個のサンプリングデータを供給した時に出力されたフィルタ出力データから全波整流波形を生成する第4の工程と、
    この全波整流波形において上に凸の部分(ピーク部)の値であるピーク値の標準偏差を求め、この標準偏差をピーク値の平均値で除算した正規化標準偏差を求める第5の工程と、
    この正規化標準偏差が所定しきい値以下の場合には、前記フィルタ出力データが零となる周期からピッチを求める第6の工程と、を含む処理を実行することを特徴とするピッチ検出方法。
  2. 請求項1に記載のピッチ検出方法において、
    前記処理部は、
    前記正規化標準偏差が所定値以下でない場合には、次の所定数個のサンプリングデータを用いて、前記第1、第2、第3、第4、第5の工程を繰り返して、新たな正規化標準偏差を求める工程と、
    この新たな正規化標準偏差が前記所定しきい値以下となった場合には、前記繰り返された第3の工程で決定されたバンドパスフィルタに対して、既に前回の第1の工程によって当該バンドパスフィルタから出力されたフィルタ出力データが零となる周期からピッチを求める工程と、を含む処理を更に実行することを特徴とするピッチ検出方法。
JP2003285342A 2003-08-01 2003-08-01 ピッチ検出方法 Expired - Fee Related JP4360527B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003285342A JP4360527B2 (ja) 2003-08-01 2003-08-01 ピッチ検出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003285342A JP4360527B2 (ja) 2003-08-01 2003-08-01 ピッチ検出方法

Publications (2)

Publication Number Publication Date
JP2005055612A true JP2005055612A (ja) 2005-03-03
JP4360527B2 JP4360527B2 (ja) 2009-11-11

Family

ID=34364997

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003285342A Expired - Fee Related JP4360527B2 (ja) 2003-08-01 2003-08-01 ピッチ検出方法

Country Status (1)

Country Link
JP (1) JP4360527B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005346078A (ja) * 2004-06-04 2005-12-15 Honda Research Inst Europe Gmbh 2つの調波信号の共通源の判定方法
JP2006209123A (ja) * 2005-01-28 2006-08-10 Honda Research Inst Europe Gmbh 高調波信号の基本周波数を求める方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005346078A (ja) * 2004-06-04 2005-12-15 Honda Research Inst Europe Gmbh 2つの調波信号の共通源の判定方法
JP2006209123A (ja) * 2005-01-28 2006-08-10 Honda Research Inst Europe Gmbh 高調波信号の基本周波数を求める方法
JP4705480B2 (ja) * 2005-01-28 2011-06-22 ホンダ リサーチ インスティテュート ヨーロッパ ゲーエムベーハー 高調波信号の基本周波数を求める方法

Also Published As

Publication number Publication date
JP4360527B2 (ja) 2009-11-11

Similar Documents

Publication Publication Date Title
KR100880480B1 (ko) 디지털 오디오 신호의 실시간 음악/음성 식별 방법 및시스템
US9280961B2 (en) Audio signal analysis for downbeats
KR101122838B1 (ko) 음원 신호 분리 장치 및 방법, 및 피치 검출 장치 및 방법
US8193436B2 (en) Segmenting a humming signal into musical notes
US8494668B2 (en) Sound signal processing apparatus and method
Chen et al. Electric Guitar Playing Technique Detection in Real-World Recording Based on F0 Sequence Pattern Recognition.
US9454976B2 (en) Efficient discrimination of voiced and unvoiced sounds
US8762147B2 (en) Consonant-segment detection apparatus and consonant-segment detection method
CN102568454B (zh) 一种分析音乐bpm的方法和装置
JPH0121519B2 (ja)
US7835905B2 (en) Apparatus and method for detecting degree of voicing of speech signal
US8086449B2 (en) Vocal fry detecting apparatus
CN105161116A (zh) 多媒体文件高潮片段的确定方法及装置
JP2005266797A (ja) 音源信号分離装置及び方法、並びにピッチ検出装置及び方法
US8108164B2 (en) Determination of a common fundamental frequency of harmonic signals
JP2004125944A (ja) 情報識別装置及び方法、並びにプログラム及び記録媒体
JP4360527B2 (ja) ピッチ検出方法
Dressler Automatic transcription of the melody from polyphonic music
JP3266124B2 (ja) アナログ信号中の類似波形検出装置及び同信号の時間軸伸長圧縮装置
CN113611330A (zh) 一种音频检测方法、装置、电子设备及存储介质
CN110853678B (zh) 颤音识别评分方法、装置、终端和非临时性计算机可读存储介质
JP2589468B2 (ja) 音声認識装置
KR100539176B1 (ko) 음악적 특징 추출 방법 및 장치
Shandilya et al. Retrieving pitch of the singing voice in polyphonic audio
KR20190086872A (ko) 고조파를 제거한 미디 파일 생성 방법 및 오디오 파일 변환 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060405

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090615

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090715

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: 20090806

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: 20090806

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120821

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees