JP5246208B2 - 基音抽出装置、及びプログラム - Google Patents
基音抽出装置、及びプログラム Download PDFInfo
- Publication number
- JP5246208B2 JP5246208B2 JP2010130067A JP2010130067A JP5246208B2 JP 5246208 B2 JP5246208 B2 JP 5246208B2 JP 2010130067 A JP2010130067 A JP 2010130067A JP 2010130067 A JP2010130067 A JP 2010130067A JP 5246208 B2 JP5246208 B2 JP 5246208B2
- Authority
- JP
- Japan
- Prior art keywords
- frequency
- channel
- fundamental
- speech waveform
- harmonic
- 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.)
- Active
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
図1は、本実施の形態による音響効果付与装置を搭載した電子楽器の構成図である。
その電子楽器は、図1に示すように、楽器全体の制御を行うCPU1と、複数の鍵を備えた鍵盤2と、各種スイッチを備えたスイッチ部3と、CPU1が実行するプログラムや各種制御用データ等を格納したROM4と、CPU1のワーク用のRAM5と、例えば液晶表示装置(LCD)や複数のLEDなどを備えた表示部6と、マイク7から入力されるアナログの音声信号のA/D変換を行いその音声データを出力するA/D変換器8と、CPU1の指示に従い楽音発音用の波形データを生成する楽音生成部9と、その生成部9が生成した波形データのD/A変換を行い、アナログのオーディオ信号を出力するD/A変換器10と、そのオーディオ信号を放音するサウンドシステム11と、を備えて構成されている。それらの構成において、CPU1、鍵盤2、スイッチ部3、ROM4、RAM5、表示部6、A/D変換器8、及び楽音生成部9の間はバスによって相互に接続されている。なお、上記スイッチ部3は、例えばユーザが操作の対象とする各種スイッチの他に、各種スイッチの状態変化を検出するための検出回路を備えたものである。マイク7は、内蔵されたものか、或いは特には図示しない端子に接続されたものである。
音響効果を付加した音声波形、つまりピッチをシフトした音声波形は、元の音声波形を周波数分析して周波数チャンネル毎に周波数成分(スペクトル成分)を抽出し、抽出した周波数成分をシフトし、そのシフト後の周波数成分を用いて合成(生成)するようになっている。そのために、以下のような機能構成を備えている。
FFTの実行により、周波数が異なる周波数チャンネル毎に、実数成分と虚数成分を持つ周波数成分が抽出される。実数成分をreal、虚数成分をimgと表記すると、各周波数チャンネルの周波数振幅mag、及び位相phaseは以下のように算出することができる。
phase=arctan(img/real) ・・・ (2)
arctanを用いて算出される位相phaseは、−π〜πの間に制限される。しかし、位相phaseは角速度の積分値であるから展開する必要がある。展開の有無の区別を容易にするために、折り畳まれている位相を小文字のθ、展開されている位相を大文字のΘで表記すると、本来は
Θk,t=θi,t+2nπ n=0,1,2,・・・ ・・・ (3)
となる。このことから、位相phase(=θ)はnを求めて展開する必要がある。ここで式(3)中のΘに下添字として付したk、tはそれぞれ、周波数チャンネルのインデクス、時刻を表している。
先ず、フレーム間の位相差Δθを次のようにして算出する。
Δθi,k=θi,k−θi-1,k ・・・ (4)
ここで、Δθi,kは元音声波形の周波数チャンネルkにおける直前のフレームと今回のフレームとの間の位相差、下添字のiはフレームをそれぞれ表している。今回のフレーム(現フレーム)はi、直前のフレームはi−1で表されている。
Ωi,k=(2π・fs)・k/N ・・・ (5)
で示される。その周波数Ωi,kの時、直前のフレームとの時間差をΔtとすると、位相差ΔZi,kは
ΔZi,k=Ωi,k・Δt ・・・ (6)
で算出できる。時間差Δtは
Δt=N/(fs・OVL) ・・・ (7)
である。式(6)は位相展開されている状態なので、以下のように記述できる。
式(4)で算出される位相差Δθi,kと式(8)中の位相差Δζi,kの差をδ(=Δθi,k−Δζi,k)とすると
Δθi,k−Ωi,k・Δt=(Δζi,k+δ)−(Δζi,k+2nπ)
=δ−2nπ ・・・ (9)
が導出できる。従って式(9)の右辺の2nπを削除してその範囲を−πからπの間に制限すればδを算出できる。そのδは、元音声波形において実際に検出される位相差(以降「実位相差」と呼ぶ)である。
ΔΘi,k=δ+Ωi,k・Δt=δ+(Δζi,k+2nπ)=Δθi,k+2nπ
・・・ (10)
式(10)中のΩi,k・Δtは、式(5)、(7)より下記のように変形できる。
=(2π/OVL)・k ・・・ (11)
FFTを含む離散フーリエ変換(DFT)では、音声データ(信号)に含まれる周波数成分の周波数がDFT点数の整数倍となる特別な場合を除き、すべての周波数チャンネルに周波数成分が漏れ出して(遷移して)しまう。そのため、信号の調波構造等を分析する場合は、DFTの結果から実際に周波数成分が存在する周波数チャンネルを検出する作業が必要になる。
このようなゼロクロス判定条件を満たす周波数チャンネルkを探すことにより、正から負に大きくゼロクロスする点に最も近い周波数チャンネルを倍音チャンネルとして高精度に抽出することができる。その抽出は、FFT点数が十分でなく、周波数振幅による倍音チャンネルの抽出が困難であっても確実に行うことができる。より高精度な抽出を行う必要がある場合には、ピーク検出を併せて行うようにしても良い。
先ず、検出した2つの倍音チャンネルのインデクスhm1、hm2に対応する周波数の最大公約数を求める。その最大公約数は、ユークリッドの互除法を使って算出することができる。負でない2つの整数x、yの最大公約数gcd(x、y)は
hmx=hm1/x ・・・ (13)
により求められる。このようにして求める倍数hmxは、基準チャンネルに相当する周波数を基本周波数(基音(ピッチ)の周波数)で割った値に相当する。
ΔΘd・hmx=2πfd・Δt・hmx
=(2πfd・hmx・N)/(fs・OVL) ・・・(14)
により行うことができる。元音声のピッチを目標ピッチに変換するためのピッチスケーリング値ρは
ρ=ΔΘd・hmx/ΔΘi,hm1 ・・・ (15)
で算出できる。図2の位相補償部25は、このようにしてスケーリング値ρを算出してピッチシフタ27に出力する。それにより、ピッチシフタ27はそのスケーリング値ρでピッチスケーリングを行い、ピッチをシフトさせる。
θ'i,k=ΔΘi,k((θ'i-1、hm1−θi-1、hm1)/ΔΘi,hm1+(ρ−1))
+θi,k ・・・(16)
式(16)では、スケーリングを行って得られる位相差には「’」を付して示している。その式(16)によるスケーリングを行うことにより、時間軸上の位相の一貫性(HPC:Horizontal Phase Coherence)およびチャンネル間、すなわち周波数成分間の位相関係(VPC:Vertical Phase Coherence)は共に保存される(特願2004−374090参照)。
img’ =mag・sin(phase’) ・・・ (18)
IFFT部26は、このようにして変換された周波数成分を周波数チャンネル毎に位相補償部25から入力し、IFFTを実行して時間領域上のデータに戻す。ピッチシフタ27は、位相補償部25から入力するピッチスケーリング値ρに応じて、IFFT部26が生成したフレームに対する補間、或いは間引きによるピッチスケーリングを行う。それにより、データ量は1/ρに伸縮するが、位相補償部25はρ倍の位相スケーリング(式(16))を行っているため、その伸縮は打ち消され、データ量は元の大きさを維持することになる。そのようにして得られたフレームをフレーム加算部28がオーバーラップ加算するため、目標ピッチを持つ合成音声がサウンドシステム11により放音されることになる。
図5は、全体処理のフローチャートである。始めに図5を参照して、その全体処理について詳細に説明する。なお、その全体処理は、CPU1が、ROM4に格納されたプログラムを実行して電子楽器のリソースを使用することにより実現される。
先ず、ステップSC1では、ステップSB3で検出した2つの倍音チャンネルのインデクス値hm1、hm2に対応する周波数をそれぞれ変数h1、h2に代入する。ここで変数h1、h2はそれぞれ、式(12)のx、yに対応する。続くステップSC2では、変数h2の値に対応するインデクス値が6以上か否か判定する。そのインデクス値が6以上であった場合、判定はYESとなり、次にステップSC3で変数h1の値を変数h2の値で割って得られる剰余を変数tに代入し、変数h1に変数h2の値を代入し、更に変数h2に変数tの値を代入してから、再度ステップSC2での判定を行う。そうでない場合には、判定はNOとなり、ステップSC4に移行する。ステップSC2、SC3で形成される処理ループをステップSC2の判定がNOとなるまで繰り返し実行することにより、インデクス値hm1、hm2に対応する周波数間の最大公約数が変数h1に代入される(式(12))。
fi=ΔΘi,hm1/(2π・Δt・hmx)
=(ΔΘi,hm1・fs・OVL)/(2π・N・hmx) ・・・ (19)
により行うことができる。本発明を適用した基音抽出装置は、式(19)により基本周波数fiを算出するものとして、本実施の形態による音響効果付与装置上、或いはそれを搭載した電子楽器上に容易に実現させることができる。目標ピッチが周波数で指定されているような場合には、基本周波数fiを算出してから、その目標ピッチの周波数との比をとることにより、スケーリング値ρを求めても良い。また、算出した基本周波数fiは表示部6等によりユーザに知らせるようにしても良い。合成音声波形の生成については、別の方法を採用しても良い。
3 スイッチ部
4 ROM
5 RAM
7 マイク
8 A/D変換器
9 楽音生成部
10 D/A変換器
11 サウンドシステム
Claims (3)
- 音声波形の基音の周波数を抽出する基音抽出装置において、
前記音声波形をフレーム単位で周波数分析して周波数チャンネル毎に周波数成分を抽出する周波数分析手段と、
前記周波数分析手段が周波数成分を抽出した周波数チャンネルのなかから、前記音声波形の基音の1倍以上である倍音の周波数成分が存在する周波数チャンネルを2つ以上、抽出する倍音チャンネル抽出手段と、
前記倍音チャンネル抽出手段が抽出した2つ以上の周波数チャンネルに対応する周波数間の最大公約数を算出する公約数算出手段と、
前記倍音チャンネル抽出手段が抽出する2つ以上の周波数チャンネルのうちの一つを基準チャンネルとして、該基準チャンネルの周波数を前記公約数算出手段が算出する最大公約数最大公約数で割って得られる除算値を算出し、該基準チャンネルのフレーム間の位相差を該除算値で除算することで得られる、前記音声波形の基音でのフレーム間における位相差を周波数に変換することにより、前記音声波形の基音の周波数を算出する基音算出手段と、
を具備することを特徴とする基音抽出装置。 - 前記倍音チャンネル抽出手段は、前記周波数分析手段が周波数チャンネル毎に抽出する周波数成分から位相を算出し、該算出した位相を用いて2つ以上の周波数チャンネルを抽出する、
ことを特徴とする請求項1記載の基音抽出装置。 - 音声波形の基音の周波数を抽出する基音抽出装置に実行させるプログラムであって、
前記音声波形をフレーム単位で周波数分析して周波数チャンネル毎に周波数成分を抽出する周波数分析機能と、
前記周波数分析機能により周波数成分を抽出した周波数チャンネルのなかから、前記音声波形の基音の1倍以上である倍音の周波数成分が存在する周波数チャンネルを2つ以上、抽出する倍音チャンネル抽出機能と、
前記倍音チャンネル抽出機能により抽出した2つ以上の周波数チャンネルに対応する周波数間の最大公約数を算出する公約数算出機能と、
前記倍音チャンネル抽出機能が抽出する2つ以上の周波数チャンネルのうちの一つを基準チャンネルとして、該基準チャンネルの周波数を前記公約数算出機能が算出する最大公約数最大公約数で割って得られる除算値を算出し、該基準チャンネルのフレーム間の位相差を該除算値で除算することで得られる、前記音声波形の基音でのフレーム間における位相差を周波数に変換することにより、前記音声波形の基音の周波数を算出する基音算出機能と、
を実現させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010130067A JP5246208B2 (ja) | 2010-06-07 | 2010-06-07 | 基音抽出装置、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010130067A JP5246208B2 (ja) | 2010-06-07 | 2010-06-07 | 基音抽出装置、及びプログラム |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005054481A Division JP4734961B2 (ja) | 2005-02-28 | 2005-02-28 | 音響効果付与装置、及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010191474A JP2010191474A (ja) | 2010-09-02 |
JP5246208B2 true JP5246208B2 (ja) | 2013-07-24 |
Family
ID=42817498
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010130067A Active JP5246208B2 (ja) | 2010-06-07 | 2010-06-07 | 基音抽出装置、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5246208B2 (ja) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0830290A (ja) * | 1994-07-18 | 1996-02-02 | Hitachi Ltd | 音声入力可能な情報処理装置およびそれにおける誤処理検出方法 |
JP4455701B2 (ja) * | 1999-10-21 | 2010-04-21 | ヤマハ株式会社 | 音声信号処理装置および音声信号処理方法 |
JP3546779B2 (ja) * | 1999-11-05 | 2004-07-28 | ヤマハ株式会社 | 音響信号分析方法 |
-
2010
- 2010-06-07 JP JP2010130067A patent/JP5246208B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2010191474A (ja) | 2010-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4734961B2 (ja) | 音響効果付与装置、及びプログラム | |
JP3941611B2 (ja) | 歌唱合成装置、歌唱合成方法及び歌唱合成用プログラム | |
EP1701336B1 (en) | Sound processing apparatus and method, and program therefor | |
EP3719795B1 (en) | Voice synthesizing method, voice synthesizing apparatus, and computer program | |
Bonada et al. | Sample-based singing voice synthesizer by spectral concatenation | |
JP2018004870A (ja) | 音声合成装置および音声合成方法 | |
JP5246208B2 (ja) | 基音抽出装置、及びプログラム | |
JP6543895B2 (ja) | 効果付加装置、方法、およびプログラム、電子楽器 | |
JP4455701B2 (ja) | 音声信号処理装置および音声信号処理方法 | |
JP4830350B2 (ja) | 声質変換装置、及びプログラム | |
Royer | Pitch-shifting algorithm design and applications in music | |
JP2007140000A (ja) | 歌唱採点装置および歌唱採点処理のプログラム | |
JP5163606B2 (ja) | 音声分析合成装置、及びプログラム | |
Gong et al. | Monaural musical octave sound separation using relaxed extended common amplitude modulation | |
JP4998565B2 (ja) | 歌唱採点装置および歌唱採点処理のプログラム | |
JP4513556B2 (ja) | 音声分析合成装置、及びプログラム | |
JPWO2008001779A1 (ja) | 基本周波数推定法および音響信号推定システム | |
JP2008216381A (ja) | 音声分析合成装置、及びプログラム | |
AU2020104383A4 (en) | Projection filter based universal framework to match the musical notes of synthesizer and indian classical instruments | |
JP5099146B2 (ja) | 歌唱採点装置および歌唱採点処理のプログラム | |
Amatriain et al. | Spectral modeling for higher-level sound transformation | |
JP3404850B2 (ja) | 音源装置 | |
Navarro et al. | Continuous frequency and phase spectrograms: a study of their 2D and 3D capabilities and application to musical signal analysis | |
JP2689709B2 (ja) | 電子楽器 | |
唐博文 | Energy-Efficient Real-Time Pitch Correction System via FPGA |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100630 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100630 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120904 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121102 |
|
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: 20130312 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130325 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5246208 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160419 Year of fee payment: 3 |