削除された内容 追加された内容
m リンク先変更と追加
編集の要約なし
1行目:
'''音声符号化'''(おんせいふごうか、{{lang-en-short|''speech coding''}})は、[[アナログ]]の[[音声]]信号を[[デジタル]][[符号化]]するための技術で、音声の性質を使ってデータ圧縮を行うことに特徴がある。音楽などの一般的なオーディオ信号を対象とする[[MP3]]などの[[音声圧縮|オーディオ圧縮]]技術は、人間の[[聴覚心理学]]上の特性やデータの[[冗長性 (情報理論)|冗長性]]を利用して不要なデータの除去を行うが、音声符号化ではそれに加えて音声固有のモデル化を行うことができるため、さらに[[ビットレート]]を下げることが可能である。
音楽などの一般的なオーディオ信号を対象とする[[MP3]]などの[[音声圧縮|オーディオ圧縮]]技術は、人間の[[聴覚心理学]]上の特性やデータの[[冗長性 (情報理論)|冗長性]]を利用して不要なデータの除去を行うが、音声符号化ではそれに加えて音声固有のモデル化を行うことができるため、さらに[[ビットレート]]を下げることが可能である。
 
音声符号化の技術は異なった多くの分野で使われている。代表的なのは、[[携帯電話]]、[[衛星電話]]、[[VoIP]]など[[通信]]の分野だが、[[暗号化]]、[[放送]]、記録([[Blu-ray Disc]]など)の分野や[[自動音声応答装置|音声応答システム]]などの[[音声処理]]の分野などで使用されている。
 
== 概要 ==
人間の[[声]]は、音源である[[声帯]]の音の特性や[[有声]]・[[無声音|無声]]の区別と、咽喉と口腔、鼻腔、舌、唇などの[[調音]]器官(声道)の共鳴による周波数選択特性でモデル化できる。音声波形はかなり早い振動成分を含むが、調音機構などの動きはそれと比べると比較的緩やかであり、それらを適切にパラメータ化することができれば、必要なデータを大幅に減らすことができる。
 
音声符号化は、通常の[[音声圧縮|オーディオ圧縮]]技術と、音声をモデル化するパラメータを[[音声信号処理]]により抽出する技術とを組み合わせたものである。
 
音声符号化のアルゴリズムは大きく以下のように分けることができる。
* 波形符号化({{lang|en|''waveform coder''}})
* ハイブリッド符号化({{lang|en|''hybrid coder''}}, {{lang|en|''analysis-by-synthesis coder''}})
* 分析合成符号化({{lang|en|''vocoder''}},ボコーダー)
 
'''波形符号化'''は音声固有のモデル化を行わない方法で、比較的[[音質]]は高いが圧縮率は低い。
 
'''分析合成符号化'''('''ボコーダー''')と'''ハイブリッド符号化'''は、声帯に相当する音源と声道の特性を表す合成フィルターとで音声をモデル化する方法である。ハイブリッド符号化と分析合成符号化とは基本となる原理が似ているため、'''パラメトリック符号化'''({{lang|en|''parametric coder''}})(広義の)ボコーダーとしてまとめて扱われることもある。分析合成符号化は、聴感上同じ音声に聞こえるようにパラメータ化するのに対し、ハイブリッド符号化では音声波形に近づけることを目標に音源パラメータが決められる。
 
一般的に言って、波形符号化と比較するとハイブリッド符号化は圧縮率が高く、分析合成符号化は音声波形の再現を目指さない分さらに圧縮率が高い。分類ごとの特性をまとめると以下のようになる。
24 ⟶ 23行目:
! 分類 !! レート(k[[ビット毎秒|bps]]) !! 複雑さ !! 符号化方式の例
|-
! 波形符号化(時間領域)
| 12-64 || Low || [[パルス符号変調|PCM]], [[ADPCM]], CVSD
|-
! 波形符号化(周波数領域)
| 12-256 || Midium || SBC
|-
38 ⟶ 37行目:
 
== 波形符号化 ==
'''波形符号化'''({{lang|en|''waveform coder''}})は、音声固有のモデル化を行うことなく音声波形などを忠実に符号化しようとする方法である。大きく分けて、[[時間領域]]で符号化を行うものと、[[周波数領域]]で符号化を行うものがある。一般に圧縮率は低いが、音楽などの音声以外の信号も音声と同じように符号化できる。
=== 時間領域での符号化 ===
時間領域で波形を符号化する技術はもっとも古くからあるもので、[[PCM]]、[[ADPCM]]などがその代表である。圧縮率は低いが、比較的単純に符号化ができ符号化遅延もないため、主に電話回線などの符号化方式として使われてきた。
 
主要な符号化方式として以下のものがある。
* PCM(PCM(パルス符号変調)
* ADPCM(ADPCM(適応差分PCM)PCM)
* DM(DM(デルタ変調)
==== PCM(PCM(パルス符号変調) ====
[[パルス符号変調]]({{lang|en|''pulse code modulation''}}、PCM),PCM)は最も基本となる波形符号化方式である。線形PCMと、人間の[[聴覚心理学|聴覚]]の対数的な特性を利用し信号の振幅が大きくなるほど[[量子化]]のステップ幅を大きくする非線形PCMの2種類がある。非線形PCMの規格で、圧伸特性として''[[μ-law]]''(北米・日本)及び''[[A-law]]''(欧州その他)を使用する [[ITU-T]] [[G.711]] が電話などでの音声符号化の用途で使われている。4kHzの帯域幅を持つ電話品質の音声([[標本化周波数]]8kHz)を64kbpsで符号化できる。
==== ADPCM(ADPCM(適応差分PCM)PCM) ====
非線形PCMの規格で、圧伸特性として''[[μ-law]]''(北米・日本)および''[[A-law]]''(欧州その他)を使用する [[ITU-T]] [[G.711]] が電話などでの音声符号化の用途で使われている。4kHzの帯域幅を持つ電話品質の音声([[標本化周波数]]8kHz)を64kbpsで符号化できる。
音声信号の隣り合ったサンプル間には[[相関係数|相関]]があるため、過去のサンプル値を利用して現在のサンプル値を予測することができる。ひと1つ前のサンプル値を予測値として、次のサンプル値との差分のみをコード化する[[差分パルス符号変調|差分PCM]]({{lang|en|''differential pulse code modulation''}}、DPCM),DPCM)を改良し、[[量子化]]幅を適応的に変化させる方式が[[ADPCM|適応差分PCM]]({{lang|en|''adaptive differential pulse code modulation''}}、ADPCM),ADPCM)である。
==== ADPCM(適応差分PCM) ====
音声信号の隣り合ったサンプル間には[[相関係数|相関]]があるため、過去のサンプル値を利用して現在のサンプル値を予測することができる。ひとつ前のサンプル値を予測値として、次のサンプル値との差分のみをコード化する[[差分パルス符号変調|差分PCM]]({{lang|en|''differential pulse code modulation''}}、DPCM)を改良し、[[量子化]]幅を適応的に変化させる方式が[[ADPCM|適応差分PCM]]({{lang|en|''adaptive differential pulse code modulation''}}、ADPCM)である。
 
規格としては、 電話品質の音声を32kbpsに符号化する[[ITU-T]] [[G.721]] が1984年に勧告され、その後16,24,32、40kbps(2~5,40kbps(2~5ビット/サンプル)に符号化する[[ITU-T]] [[G.726]] が勧告された。
[[ADPCM|適応差分PCM]]は日本の[[PHS]]({{lang|en|''personal handy-phone system''}})などで使用されている。
 
==== デルタ変調 ====
デルタ変調({{lang|en|''delta modulation''}})は差分PCMの1ビット版で、ひと1つ前のサンプル値に対するサンプル値の大小を1ビットで符号化する。デルタ変調を応用したものとして、適応デルタ変調({{lang|en|''adaptive delta modulation''}},ADM)、[[ΔΣ変調|デルタ・シグマ(Δ-Σ)変調]]({{lang|en|''delta-sigma modulation''}})などがある。他の方式と比べ単純なハードウェアで音声の符号化ができるため、[[デジタル回路]]が高価だった時代に考案された
デルタ変調を応用したものとして、適応デルタ変調({{lang|en|''adaptive delta modulation''}}、ADM)、[[ΔΣ変調|デルタ・シグマ(Δ-Σ)変調]]({{lang|en|''delta-sigma modulation''}})などがある。他の方式と比べ単純なハードウェアで音声の符号化ができるため、[[デジタル回路]]が高価だった時代に考案された。
 
適応デルタ変調はデルタ変調の[[量子化]]幅を適応的に変化させる方式で、適応差分PCMの1ビット版にあたる。CVSD(CVSD({{lang|en|''continuously variable slope delta modulation''}})とも呼ばれる。CVSDは[[MIL規格|MIL-STD]]-188-113(16kbps113(16kbps32kbps)32kbps)と Federal-Standard 1023(12kbps)1023(12kbps)の規格があり、アメリカの軍事用[[戦術]][[無線通信]]システムで暗号化通信のための音声符号化方式として使用されていた。
 
[[ΔΣ変調|デルタ・シグマ変調]]は、伝送の途中の誤りが後々まで影響するデルタ変調の問題点を解決したもので、デルタ変調でのサンプル値の差分をとる回路と量子化を行う回路との間に[[積分回路]]をいたものである。デルタ・シグマ変調は初期の電子式[[電話交換機]]で使われ、また[[アナログ-デジタル変換回路|AD変換]]及び[[デジタル-アナログ変換回路|DA変換]]用LSIの技術として多用されている。
=== 周波数領域での符号化 ===
[[周波数領域]]の符号化では、[[音声]]信号を周波数領域のデータに変換し、周波数ごとの電力密度の違いや人間の[[聴覚]]モデルを利用して周波数毎の[[量子化]]の幅やビット割り当てを変え、また不要な情報の削除を行う。人間の[[知覚]]上の特性を利用するため、'''知覚符号化'''({{lang|en|''perceptual audio coding''}})と呼ばれるともある。この符号化方法は、[[CELP]]ど他の方式と比べビットレートが低いときの音声の品質が良くないため、主に高いビットレートでの符号化に利用され、電話会議などの比較的高い品質が必要な音声の符号化や、音楽を含む一般的なオーディオ信号の符号化のために使われることが多い。また、[[CELP]]など他の符号化方式と組み合わせて使用する場合もある。主要な符号化方式として変換符号化やサブバンド符号化があり、[[MP3]]や[[AAC]]などの[[音声圧縮|オーディオ圧縮]]技術としても使われている
人間の[[知覚]]上の特性を利用するため、'''知覚符号化'''({{lang|en|''perceptual audio coding''}})と呼ばれることもある。
この符号化方法は、[[CELP]]など他の方式と比べビットレートが低いときの音声の品質が良くないため、主に高いビットレートでの符号化に利用され、電話会議などの比較的高い品質が必要な音声の符号化や、音楽を含む一般的なオーディオ信号の符号化のために使われることが多い。また、[[CELP]]など他の符号化方式と組み合わせて使用する場合もある。
主要な符号化方式として変換符号化やサブバンド符号化があり、[[MP3]]や[[AAC]]などの[[音声圧縮|オーディオ圧縮]]技術としても使われている。
==== 変換符号化 ====
変換符号化({{lang|en|''transform coding''}})は、何らかの[[直交変換]]を用いて入力を複数の周波数領域に分解し、それぞれを符号化する方式である。適応変換符号化({{lang|en|''adaptive transform coding''}})と呼ばれることもある。
 
使用する[[直交変換]]としては、高速な処理が可能で特性の優れた[[離散コサイン変換]](DCT)(DCT)の一種である[[変形離散コサイン変換|変形DCT]]({{lang|en|''modified discrete cosine transform'',MDCT}})が使用されることが多い。電力密度とマスキング特性など人間の[[聴覚心理学]]上の特性から帯域ごとのビット配分を決める。電力密度の低い領域や人間の聴覚特性上聞こえにくい周波数領域に少ないビットを割り当てることで情報を圧縮する。次のサブバンド符号化とよく似た符号化方式だが、帯域分割数などの設定が容易で様々な[[直交変換]]を使えるため自由度が高い
次のサブバンド符号化とよく似た符号化方式だが、帯域分割数などの設定が容易でさまざまな[[直交変換]]を使えるため自由度が高い。
 
[[ITU-T]] [[G.722.1]] annex C は[[離散コサイン変換]]によく似た Modulated Lapped Transform(MLT)Transform(MLT)と呼ばれる変換を使用し、14kHzの帯域幅の高音質の音声信号を24,32,48kbpsに符号化できる。[[ビデオ会議]]用に使われる。
==== サブバンド符号化 ====
サブバンド符号化({{lang|en|''sub-band coding''}})は、[[フィルタ回路|フィルター]]を用いて入力を複数の周波数領域に分解し、それぞれを符号化する方式である。各周波数領域ごとに異なったビット配分を行うことで情報を圧縮するのは変換符号化と同じである。変換符号化と考え方がよく似ているため、[[変形離散コサイン変換|変形DCT]]などを用いた符号化方式もサブバンド符号化とまとめて呼ぶ場合がある。
変換符号化と考え方がよく似ているため、[[変形離散コサイン変換|変形DCT]]などを用いた符号化方式もサブバンド符号化とまとめて呼ぶ場合がある。
 
[[ITU-T]] [[G.722]] は2つのサブバンドに分けて[[ADPCM]]で符号化を行う方式で、7kHzの帯域幅の音声信号を64kbps以下に符号化できる。
 
==== 他の符号化方式と組み合わせ ====
周波数領域での符号化は他の符号化方式と組み合わされ、扱う周波数範囲を広げたり多くのビットレートをサポートする目的で使われることがある。例えば、[[Spectral Band Replication|SBR]]({{lang|en|''spectral band replication''}})は周波数領域での符号化を応用したもので、符号化の対象となる周波数領域を複数に分け、音声信号でのほとんどの情報が含まれる低域の情報を [[CELP]] などの通常の方式で符号化し、それ以上の高域の情報は大まかなスペクトル情報のみを符号化して、受信側では高域の情報を低域成分から予測復元する方法である。SBR は [[HE-AAC]] や [[mp3PRO]] などの[[コーデック]]で使われている。同様の考え方は HFR(HFR({{lang|en|''high-frequency regeneration''}}、{{lang|en|''high-frequency reconstruction''}})の名前でも知られており、音声符号化方式として古くから研究されている
周波数領域での符号化は他の符号化方式と組み合わされ、扱う周波数範囲を広げたり多くのビットレートをサポートする目的で使われることがある。
例えば、[[Spectral Band Replication|SBR]]({{lang|en|''spectral band replication''}})は周波数領域での符号化を応用したもので、符号化の対象となる周波数領域を複数に分け、音声信号でのほとんどの情報が含まれる低域の情報を [[CELP]] などの通常の方式で符号化し、それ以上の高域の情報は大まかなスペクトル情報のみを符号化して、受信側では高域の情報を低域成分から予測復元する方法である。SBR は [[HE-AAC]] や [[mp3PRO]] などの[[コーデック]]で使われている。同様の考え方は HFR({{lang|en|''high-frequency regeneration''}}、{{lang|en|''high-frequency reconstruction''}})の名前でも知られており、音声符号化方式として古くから研究されている
<ref>John Makhoul, Michael Berouti. ''High-Frequency Regeneration in Speech Coding Systems''. IEEE Proc. ICASSP, pp.428-431. 1979. </ref>。
 
この考え方は、[[携帯電話]]用の音声符号化規格である [[EVRC|EVRC-WB]] や [[AMR-WB]]、[[VMR-WB]] などに使われている。AMR-WBでは7kHzの帯域幅の音声信号を標準レート設定で 6.60kbps~12.65kbps(65kbps(最大23.85kbps)85kbps)に、EVRC-WB は同じ帯域幅を 8.55kbps 以下に符号化できる。
 
== ハイブリッド符号化 ==
'''ハイブリッド符号化'''({{lang|en|''hybrid coder''}}, {{lang|en|''analysis-by-synthesis coder''}})は波形符号化と分析合成符号化とを組み合わせた方法である。分析合成符号化と同様、声帯に相当する音源と声道の特性を表す合成フィルターとして音声をモデル化しパラメータ化を行うが、声道のパラメータを用いて音声波形を再合成し、元の音声波形にできるだけ近くなるよう音源パラメータを求めることに特徴がある。''合成による分析''({{lang|en|''analysis-by-synthesis'',AbS}})をベースとすることから '''AbS 符号化'''と表現されることもある。波形符号化と比較すると、音声の適切なモデル化により比較的低いビットレート(4.8-16kbps)でも良好な[[音質]]が得られ、[[携帯電話]]など低いビットレートが要求される機器で多く使われている。
波形符号化と比較すると、音声の適切なモデル化により比較的低いビットレート(4.8-16kbps)でも良好な[[音質]]が得られ、[[携帯電話]]など低いビットレートが要求される機器で多く使われている。
=== CELP ===
[[CELP]]({{lang|en|''code excited linear prediction coder''}},セルプ)は、ハイブリッド符号化方式の中で最も広く使われている音声符号化アルゴリズムである。声道に相当する合成フィルターとして[[線形予測法|線形予測]][[フィルター]]を、声帯に相当する音源として適応型と固定型のコードブックを使用する。合成による分析の手法を用い、音声波形を再合成し聴感補正を行った後の信号と元の信号とを比較することで、コードブックから誤差が最小になるものを探索する。合成による分析は音質の向上に大きく貢献しているが、その反面大きな計算量が必要で、最初に提案された時には実時間での符号化ができなかった<ref>
''Springer Handbook of Speech Processing'' には、当時の[[スーパーコンピュータ]]である[[CRAY-1]]を用い1秒の信号を符号化するのに125秒必要だった、との記述がある。</ref>。そのため、計算量を減らすための様々な派生方式が考案された。以下に代表的なCELPの派生方式を示す
* VSELP({{lang|en|''vector sum excited linear prediction''}})
そのため、計算量を減らすためのさまざまな派生方式が考案された。以下に代表的なCELPの派生方式を示す。
* VSELP([[ACELP]]({{lang|en|''vectoralgebraic sum excited linear predictionCELP''}})
* [[ACELP]](LD-CELP({{lang|en|''algebraiclow delay CELP''}})
* LD-CELP({{lang|en|''low delay CELP''}})
==== VSELP ====
VSELP(VSELP({{lang|en|''vector sum excited linear prediction''}})は、複数の[[ベクトル空間|基底ベクトル]]を用意し、基底ベクトルの和(+(+/-)-)を固定型コードブックとして扱う方式である。個々の基底ベクトルごとの[[線形予測法|線形予測]][[フィルター]]の出力を求めておけば、全ての基底ベクトルの和による出力はそれらの合成により求められ、計算量を大幅に削減できる。
 
VSELP 方式は[[第二世代携帯電話]]で主に使われ、日本では[[PDC]]、北米では[[D-AMPS]]の符号化方式として用いられた。
==== ACELP ====
[[ACELP]]({{lang|en|''algebraic CELP''}})は、あらかじめ代数的に決められた位置に配置した振幅が+1+1/-1-1のパルスの組み合わせを固定型コードブックとして扱う方式である。その代数的な性格よりコード探索の効率が良く、コードブック全体をテーブルとして用意する必要が無いためメモリも削減できる。また、柔軟性があり大きなサイズのコードブックを容易に実現できる。そのため[[VoIP]]や[[携帯電話]]用として、多くの標準化方式で広く用いられている。
 
ACELP 方式は、[[ITU-T]] [[G.723.1]](5(5.3kbps)、3kbps),[[G.729]](8kbps)、(8kbps),[[G.722.2]](6(6.6-23.85kbps)、およ85kbps),及び携帯電話用の GSM [[Adaptive Multi-Rate|AMR]]([[GSM]]/[[W-CDMA]]用)、),[[AMR-WB]]([[W-CDMA]]用,[[Adaptive Multi-Rate|AMR]]のワイドバンド版)、),[[EVRC]]([[CDMA2000]]用)、),[[VMR-WB]]([[CDMA2000]]用のワイドバンド版)、),[[SMV]]([[CDMA2000]]用)、),PDC-EFR(EFR([[PDC]]用)などに用いられている。
 
==== LD-CELP ====
LD-CELP(CELP({{lang|en|''low delay CELP''}})は、符号化遅延を2ms以下に低遅延化した CELP である。 CELP を含む多くの符号化方式は、サンプル値を20ms程度のフレームにまとめフレーム単位で符号化の処理を行う。そのため方式によって決まる一定の符号化遅延が発生する。LD-CELP はフレーム単位の処理を行わず、過去のサンプル値から後ろ向きに[[線形予測法|線形予測]]係数などのパラメータを求め、また5サンプル単位でコードブック探索を行うことで低遅延化を行っている。
 
LD-CELP 方式は、[[ITU-T]] [[G.728]](16kbps)(16kbps)で使われ、32kbpsの[[ADPCM]]と同等の音質を実現している。
 
== 分析合成符号化(ボコーダー) ==
'''分析合成符号化'''、あるいは'''ボコーダー'''({{lang|en|''vocoder''}},{{lang|en|''voice coder''}}の略)とは、人間の声のモデルを元に信号を分析してパラメータ化し符号化を行う方式で、復号時には、音声の波形ではなく聴感上同じ音声に聞こえるように再合成を行う。[[CELP]]などの音声波形を意識した符号化方式は音声信号を比較的良い音質で符号化できるが、ビットレートが4kbps以下になると音声波形の再現が十分にできず音質が悪化する
[[CELP]]などの音声波形を意識した符号化方式は音声信号を比較的良い音質で符号化できるが、ビットレートが4kbps以下になると音声波形の再現が十分にできず音質が悪化する
<ref name=Benesty2007>Jacob Benesty, M. M. Sondhi, Yiteng Huang (ed). ''Springer Handbook of Speech Processing''. Springer, 2007. ISBN 978-3540491255.</ref>。
多くの分析合成符号化方式は、1.2~4kbps程度で音声を符号化でき、方式によっては0.6kbps程度でも了解可能な音声の符号化ができる。分析合成符号化は、低いビットレートでの符号化が必要な無線通信の分野、特に[[衛星電話]]や、軍事用[[戦術]][[無線通信]]などで使われている。
=== LPCボコーダー ===
LPCボコーダー({{lang|en|''linear prediction coding vocoder''}},[[線形予測符号]]ボコーダー)は、もっとも初期の分析合成符号化方式で、[[CELP]]など他の方式のベースにもなったものである。人間の[[声]]は、声道の周波数選択特性と音源である[[声帯]]などの音の特性や[[有声]]・[[無声音|無声]]の区別でモデル化できる。有声時、[[声帯]]からは特定の周波数(''ピッチ周波数'')のブザーのような音が生成され、無声時には口腔、舌、歯、唇などの[[調音]]器官からスペクトルの広い雑音が生成される。
人間の[[声]]は、声道の周波数選択特性と音源である[[声帯]]などの音の特性や[[有声]]・[[無声音|無声]]の区別でモデル化できる。有声時、[[声帯]]からは特定の周波数(''ピッチ周波数'')のブザーのような音が生成され、無声時には口腔、舌、歯、唇などの[[調音]]器官からスペクトルの広い雑音が生成される。
 
LPCボコーダーはこれらの考え方を素直にモデル化したもので、声道に相当する合成フィルターのパラメータとして[[線形予測法|線形予測]](LP)(LP)[[フィルター]]の係数を、音源のパラメータとしては[[声帯]]のピッチ周波数と[[有声]]・[[無声音|無声]]の区別とを使用する。復号を行う際、有声時には指定されたピッチ周波数の特定波形のパルス波の列を、無声時には[[ホワイトノイズ]]を音源として用い、[[線形予測法|線形予測]][[フィルター]]を通すことで音声を再合成する。LPCボコーダーの基礎となる技術は1960年代から1970年代にかけて開発された
<ref name=Gray2004>Robert M. Gray. ''California Coding: Early LPC Speech in Santa Barbara, Marina del Rey, and Silicon Valley 1967-1982''. Special Workshop in Maui. January, 2004.</ref>。
 
LPCボコーダーを用いた初期の規格としては1976年の Federal-Standard 1015(LPC1015(LPC-10e)10e)があり、音声を2.4kbpsで符号化できた。主に軍用・政府用の暗号化通信に使用された。
=== 各種符号化方式 ===
古典的なLPCボコーダーを改良するために考案されたさまざま様々な分析合成符号化方式が存在する。以下にその例をげる。
* Multi-Band Excitation(Excitation(マルチバンド励振) / Mixed-Excitation Linear Prediction
* Sinusoidal coder(coder(正弦波符号化)
* Waveform Interpolation(Interpolation(波形補間符号化)
==== Multi-Band Excitation / Mixed-Excitation Linear Prediction ====
Multi-Band Excitation(Excitation(マルチバンド励振)は、異なった周波数ごとに[[有声]]・[[無声音|無声]]の区別をパラメータ化する方式である。通常、[[線形予測法|線形予測]][[フィルター]]と組み合わせて使用する。人間の声の有声・無声の区別は単純ではなく、周期的な成分(有声音)と雑音成分(無声音)とが混じっていることも多い。この方式では音声信号をいくつかの周波数領域に分け、各領域ごとに有声・無声の判定を行うことでより自然な音声の再合成を行う。また、この方式はノイズが多い環境での有声・無声の判定間違いの音質への影響がLPCボコーダーと比べ小さいため、野外やヘリコプター内などのノイズが多い環境にも向いている
<ref>例えば、John S. Collura. ''Noise Pre-Processing for Tactical Secure Voice Communications''. Tactical Mobile Communications, RTO Meeting Proceedings 26. NATO RTO. Nov. 1999. ISBN 92-837-1022-3 参照。MELPe方式の[[CH-47_(航空機)|CH-47]]ヘリコプタの騒音下での評価は、他の方式と比べて優れている。</ref>。
Multi-Band Excitationの考え方を応用した符号化方式として、IMBE(IMBE({{lang|en|''Improved Multi-Band Excitation''}})、AMBE(),AMBE({{lang|en|''Advanced Multi-Band Excitation''}})が、関連する符号化方式として[[MELP]]({{lang|en|''Mixed-Excitation Linear Prediction''}})とそれを改良した[[MELP]]e(e({{lang|en|''enhanced Mixed-Excitation Linear Prediction''}})がある。
 
IMBE と AMBE は米 Digital Voice Systems 社が開発した符号化方式で、3.6kbps AMBE は 8kbps VCELP と同等の音質だと言われている
<ref>米 Digital Voice Systems 社の技術資料[http://www.dvsinc.com/papers/iambe.htm IMBE and AMBE]より 2010-05-15検索</ref>。詳細なアルゴリズムは公開されていない。主に[[衛星電話]]や[[アマチュア無線]]でのデジタル通信([[D-STAR]])で使用されている。
 
[[MELP]]e は、1996年に LPC-10e の代替として標準となった 2.4kbps [[MELP]] をさらに改良したもので、0.6,1.2,2.4kbpsで音声を符号化できる。 [[MELP]]、[[MELP]]eとも音声入力は5つの周波数領域に分け有声・無声のパラメータ化を行う。1.2kbps [[MELP]]e は、2.4kbps Federal-Standard 1015(LPC1015(LPC-10e)10e)より優れた音質で、特にノイズが多い環境での特性が優れている
<ref name=Collura1999>John S. Collura. ''Noise Pre-Processing for Tactical Secure Voice Communications''. Tactical Mobile Communications, RTO Meeting Proceedings 26. NATO RTO. Nov. 1999. ISBN 92-837-1022-3</ref>。
2.4kbps [[MELP]] は最初、米軍用の[[MIL規格|MIL-STD]]-3005 で規格化され、その拡張版である [[MELP]]e は米軍/[[NATO]]軍の共通規格として [[STANAG]]4591 で規格化された。主に軍用の暗号化[[戦術]][[無線通信]]システムや政府用の暗号化電話のための音声符号化方式として使用されている。
==== Sinusoidal Coding(Coding(正弦波符号化) ====
Sinusoidal Coding(Coding(正弦波符号化)は、音声を正弦波の組み合わせとして表現する方法である。また、このようなモデル化を複合正弦波モデル({{lang|en|''Composite Sinusoidal Model''}})と呼ぶこともある。[[フーリエ変換]]と異なり、組み合わせる正弦波の周波数は整数倍の関係でなくとも構わない。また、音声波形の再現ではなく、再合成した音声が同様に聞こえるよう符号化を行う。人間の声はいくつかの[[フォルマント]]周波数で特徴付けられ、例えば[[母音]]の認識は音声波形ではなく[[フォルマント]]周波数の組み合わせで認識していると言われている。周波数領域のパラメータを用いることで、聴覚上より自然にパラメータ化を行えることが期待できる<ref>
例えば、LPCボコーダーや[[CELP]]など多くの符号化で使われる[[線形予測法|線形予測]]係数は時間領域のパラメータだが、いったん[[線スペクトル対]](LSP)(LSP)という周波数領域の等価なパラメータに変換された後に処理される。線形予測係数とくらべて量子化誤差の影響が小さく、また変化が滑らかで補間が行いやすい。</ref>。
[[フーリエ変換]]と異なり、組み合わせる正弦波の周波数は整数倍の関係でなくともかまわない。また、音声波形の再現ではなく、再合成した音声が同様に聞こえるよう符号化を行う。人間の声はいくつかの[[フォルマント]]周波数で特徴づけられ、例えば[[母音]]の認識は音声波形ではなく[[フォルマント]]周波数の組み合わせで認識していると言われている。周波数領域のパラメータを用いることで、聴覚上より自然にパラメータ化を行えることが期待できる<ref>
例えば、LPCボコーダーや[[CELP]]など多くの符号化で使われる[[線形予測法|線形予測]]係数は時間領域のパラメータだが、いったん[[線スペクトル対]](LSP)という周波数領域の等価なパラメータに変換された後に処理される。線形予測係数とくらべて量子化誤差の影響が小さく、また変化が滑らかで補間が行いやすい。</ref>。
 
正弦波符号化の基本的な考え方は、複数の正弦波の周波数、振幅、位相の組で音声をパラメータ化することである。単純には、[[離散フーリエ変換]](DFT)(DFT)で[[周波数解析]]を行い、そのピーク値を取り出すことで分析を行う。パラメータがランダムに変動する音とそうでない音として[[無声音|無声]]・[[有声]]の区別もモデル化できる。
 
現実には、全ての正弦波をそのままパラメータ化するとビットサイズが大きくなり、またデータレートも一定にならないため、さまざま様々なモデルや他の符号化方式の考え方を組み合わせ、パラメータを単純化する。例えば、有声音は声帯音の基本周波数の[[倍音]]の組み合わせとモデル化でき(Harmonic Coding)、周波数はより単純な形で表現できる。また、声帯音をパルス波の列と考えれば、音源の位相は0、振幅は一定とモデル化でき、最終的な正弦波の振幅と位相は声道の特性のみを考えればよくなる。加えて、声道の特性をパラメータ化し、各正弦波の振幅を[[線形予測法|線形予測]]係数を用いて表現することもできる。
==== Waveform Interpolation(Interpolation(波形補間符号化) ====
例えば、有声音は声帯音の基本周波数の[[倍音]]の組み合わせとモデル化でき(Harmonic Coding)、周波数はより単純な形で表現できる。
人間の[[有声]]音は、声帯からのほぼ周期的な音が声道の周波数特性によって加工されたもので、よく似た波形のピッチ周波数での繰り返しになる。波形の変化は緩やかなので、基本的な波形やその変化をうまくパラメータ化できれば、情報を大幅に減らすことができる。波形補間符号化はこのような考え方にもとづく符号化方式である。[[有声]]・[[無声音|無声]]は、ゆっくり変化する波形とランダムな位相で素早く変化する波形としてモデル化できる。
また、声帯音をパルス波の列と考えれば、音源の位相は0、振幅は一定とモデル化でき、最終的な正弦波の振幅と位相は声道の特性のみを考えればよくなる。加えて、声道の特性をパラメータ化し、各正弦波の振幅を[[線形予測法|線形予測]]係数を用いて表現することもできる。
==== Waveform Interpolation(波形補間符号化) ====
人間の[[有声]]音は、声帯からのほぼ周期的な音が声道の周波数特性によって加工されたもので、よく似た波形のピッチ周波数での繰り返しになる。波形の変化は緩やかなので、基本的な波形やその変化をうまくパラメータ化できれば、情報を大幅に減らすことができる。波形補間符号化はこのような考え方にもとづく符号化方式である。[[有声]]・[[無声音|無声]]は、ゆっくり変化する波形とランダムな位相で素早く変化する波形としてモデル化できる。
 
波形補間符号化は、例えば[[EVRC|EVRC-B]]([[CDMA2000]]方式[[携帯電話]]用)の符号化方式の一部として利用されている
157 ⟶ 141行目:
 
== 音声符号化に関連した技術 ==
音声符号化に関連した技術のうち、重要なものを以下に示す。
=== ベクトル量子化 ===
音声符号化の処理で求めた各種パラメータを効率的に量子化してビットレートを減らすために最もよく使われる技術が[[ベクトル量子化]]({{lang|en|''vector quantization''}}、VQ),VQ)である。内部で計算した個々のパラメータを別々に量子化するのではなく、パラメータ間の相関関係を利用しまとめて量子化することで総ビット数を減らすことができる。例えば、内部で計算した[[線形予測法|線形予測]]係数を特定のビット数に量子化する際など、音声符号化方式の多くで使用されている。
例えば、内部で計算した[[線形予測法|線形予測]]係数を特定のビット数に量子化する際など、音声符号化方式の多くで使用されている。
 
ベクトル量子化の応用として、量子化を複数のステージに分け、最終的な量子化ベクトルを複数のステージごとのコードブックの和として表すマルチステージベクトル量子化などの技術が開発されている。
=== 線スペクトル対 ===
[[線スペクトル対]]({{lang|en|''line spectral pairs''}})は、[[線形予測法|線形予測]]係数を表現するために用いられるもので、[[線形予測法|線形予測]]係数を用いる符号化方式の多くで使われている。[[線形予測法|線形予測]][[フィルター]]の係数は[[量子化誤差]]に敏感で、誤差が大きいとフィルターが[[発振回路|発振]]する問題がある。線スペクトル対は線形予測係数と等価な係数で、線スペクトル対で表現されたフィルターは[[量子化誤差]]の影響が少なく、また線形予測係数と比較して変化が滑らかで補間が行いやすい。そのため、[[CELP]]に代表される多くの音声符号化方式で線形予測係数の表現のために利用されている。
 
理論的には、声道を固定長で一定の直径を持つ音響管の並びとしてモデル化した時、線スペクトル対は[[声門]]を開いたときと閉じたときそれぞれでの共振周波数のペアにたるパラメータで、そのため線スペクトル対と呼ばれている。
=== 音声強調 ===
{{ main|音声強調 }}
 
[[音声強調]]({{lang|en|''speech enhancement''}})は、さまざま様々なアルゴリズムを用いて音質を改善するための技術である。音声符号化ではバックグラウンドノイズを減らすための技術として主に用いられる。
 
分析合成符号化方式やハイブリッド符号化などの多くの音声符号化方式では、音声を何らかのモデルにてはめパラメータ化を行うため、音声信号にバックグラウンドノイズが含まれるとパラメータ化がうまく行えず、音質が悪化する。そのため、携帯電話や無線通信など比較的低いビットレートの符号化方式が使われる機器では、何らかの音声強調処理を行った後に符号化を行う場合が多い。また、音声認識などのフロントエンドとしても良く使われる。
 
音声信号は信号レベルの変動が大きく周波数ごとのレベル差も大きいのに対しバックグラウンドノイズは変動が比較的小さい、などの統計的な性質の違いを利用し、サブバンドごとのバックグラウンドノイズのレベルを予測して、バックグラウンドノイズの大きいサブバンドのレベルを下げることで、全体のノイズを減らすことができる。
 
音声強調は、携帯電話用の符号化方式である[[:en:EVRC|EVRC]]([[CDMA2000]]用)、[[:en:SMV|SMV]]([[CDMA2000]]用)などや、ノイズの多い環境での利用を前提とした MELPe などで、符号化方式の一部として組み込まれている。
 
== 歴史 ==
[[ファイル:SIGSALY.jpg|thumb|<span style="font-size:90%;">[[:en:Secure voice|秘話装置]] [[:en:SIGSALY|SIGSALY]]の一部</span> <br/><small>(アメリカ国立暗号博物館の展示)</small>]]
音声通信技術の歴史は19世紀の末の[[グラハム・ベル]]による電話機の発明(1876)(1876)から始まる。電話機は音声の波形をそのまま伝送するものだが、音声信号に何らかの加工を行って伝送する技術としてはボコーダーがあり、その基本的な考え方は現在の多くの音声符号化方式に大きな影響を与えている。
電話機は音声の波形をそのまま伝送するものだが、音声信号に何らかの加工を行って伝送する技術としてはボコーダーがあり、その基本的な考え方は現在の多くの音声符号化方式に大きな影響を与えている。
 
もともと元々のボコーダーは[[アナログ]]音声通信での[[音声圧縮]]技術として生まれたもので、[[アメリカ合衆国|アメリカ]]の[[ベル研究所]]のホーマー・ダッドリー([[w:Homer Dudley|Homer Dudley]])によって1928年に基本的なアイデアが発案された。当時の電信用大陸間横断ケーブルが伝送可能な周波数帯域はせいぜい100Hz程度で、3000~4000Hzの帯域を持つ音声を大陸間で直接送ることができず、音声をより狭い帯域で送るために考え出された<ref name=itakura2006>
板倉 文忠. ''[http://www.murase.m.is.nagoya-u.ac.jp/fm-kenkyukai/event/FM06-2-1.pdf 音声分析合成の基礎技術とその音声符号化への応用]''(pdf) フェロー&マスターズ未来技術時限研究専門委員会 第6回研究会資料, 電子情報通信学会, 2006.</ref>。
 
音声波形はかなり早い振動成分を含むが、[[声帯]]や咽喉と口腔、舌などの調音機構などの動きはそれと比べると比較的緩やかであり、それらを適切にパラメータ化することができれば、必要な帯域を大幅に減らすことができる。
 
ダッドリーはこの考え方をに、音声の[[周波数スペクトル]]を複数のチャネルに分け[[バンドパスフィルタ]]で分析して、[[声帯]]の音の基本周期(ピッチ)や有声・無声の区別と共に送り、受信側で音声を合成するチャネルボコーダーを1939年に発表した<ref>
Homer Dudley. ''The Vocoder''. Bell Laboratories Record, Vol.18, pp.122-126. 1939.</ref><ref>
Homer Dudley. ''[http://www.google.com/patents/about?id=HMlPAAAAEBAJ Signal Transmission]'' US Patent No.2151019, May 21, 1939. (Filed Oct. 30, 1935)</ref>。
また、鍵盤演奏型のスピーチシンセサイザーであるボーダー({{lang|en|''voder''}})と共に、1939年の[[ニューヨーク万国博覧会|ニューヨーク・ワールドフェア]]で一般公開した。チャネルボコーダーは、当時の技術水準では大掛かりな装置となってしまい、また音声の品質が悪く機械的な声になってしまうため、民間で使われることはなかったが、[[第二次世界大戦]]中の1943年、[[ウィンストン・チャーチル|チャーチル首相]]と[[フランクリン・ルーズベルト|ルーズベルト大統領]]の秘密会談用の秘話通信システム [[:en:SIGSALY|SIGSALY]] として実用された<ref name=itakura2006>
チャネルボコーダーは、当時の技術水準では大掛かりな装置となってしまい、また音声の品質が悪く機械的な声になってしまうため、民間で使われることはなかったが、[[第二次世界大戦]]中の1943年、[[ウィンストン・チャーチル|チャーチル首相]]と[[フランクリン・ルーズベルト|ルーズベルト大統領]]の秘密会談用の秘話通信システム [[:en:SIGSALY|SIGSALY]] として実用された<ref name=itakura2006>
</ref>。
 
SIGSALY はチャネルボコーダーの各チャネルの出力を6段階に[[対数]][[量子化]]し、[[パルス符号変調|PCM]]符号化した後に暗号化して送信を行うもので<ref name=CAMPBELL1993>
JOSEPH CAMPBELL, JR., RICHARD DEAN. ''[http://www.nsa.gov/about/_files/cryptologic_heritage/publications/wwii/sigsaly_history.pdf A History of Secure Voice Coding]''. Digital Signal Processing, July, 1993.</ref>、[[パルス符号変調|PCM]] を利用した最初の実用的な音声通信システムであり、分析合成符号化(ボコーダー)を[[デジタル]][[通信]]に応用した最初の例でもあった。この装置の重さは約55トン、消費電力は30kWにのぼり<ref name=itakura2006></ref>、とても民間で使えるようなものではなかった。
とても民間で使えるようなものではなかった。
 
同じような軍事用の[[デジタル]]秘話通信システムは[[1940年代]]から[[1960年代]]にかけて使用された<ref name=CAMPBELL1993></ref>。
 
その後デジタル信号処理の技術進歩により、1966年頃に[[板倉文忠]]らによる[[線形予測符号]]化({{lang|en|LPC}})方式が考案され、1970年代ごろにはこれを応用した機器が作られた<ref name=Gray2004></ref>。1985年には[[CELP]]符号化方式が発表された<ref name=itakura2006></ref>。これらにより音声の品質が向上し、コンピュータの小型化・高性能化に伴い、多くの機器で使用されるようになった
これらにより音声の品質が向上し、コンピュータの小型化・高性能化に伴い、多くの機器で使用されるようになった。
 
== 脚注 ==
227 ⟶ 206行目:
* [[ベクトル量子化]]
* [[線スペクトル対]]
* [[ヴォコーダー|ボコーダー(音楽)]]
 
== 外部リンク ==