音情報処理 第 3 回音声符号化 戸田智基 名古屋大学情報基盤センター / 大学院情報科学研究科
講義内容 波形符号化 標本化 量子化 音声符号化方式 波形符号化方式 分析合成方式 ハイブリッド方式 聴覚符号化方式
符号化 ある情報を他のもの ( 符号 ) で置き換える作業 例 1: 新聞広告 賃貸マンションをお貸しします. 間取りは 2LDK で, 具体的には 8 畳,6 畳,4.5 畳のダイニングキッチン, バストイレつきです. 部屋は南向きで,1ヶ月の賃貸料は10 万円, 最初の補償金は30 万円で礼金は無しです. 駅から徒歩 8 分です. 例 2: モールス信号 賃マン 2LDK 8 6 4.5 B T 南向賃 10 万補 30 万礼無歩 8 分 長点と短点による表現 A - 10111000 2 元系列による表現 B - 111010101000 C - - 11101011101000 この作業を音声に適用 音声符号化 Coding: 1
音声符号化 音声波形を大幅に圧縮して伝送 Coding: 2
波形符号化 標本化 量子化
波形符号化 :PCM (Pulse Code Modulaion) CD などに使用されている方式 標本化 量子化 L T L: 信号の振幅の存在範囲 標本化 量子化 時間の離散化 一定の間隔 T で分割 振幅値の離散化 一定の間隔値 Δ で分割 標本化定理に注意! 量子化誤差に注意! PCM: 1
標本化定理 信号波形 x() が0~W [Hz] に帯域制限されているとき,x() を標本化周期 T 1/(2W)[s] ごと ( つまり, 標本化周波数は 2W [Hz] 以上 ) に標本化すれば, 標本値系列から以下のように信号波形の再生が可能 sin kt T x( ) xkt k kt T T = 0.25 [s] sinc 関数 : sin(x)/x 0 1 Time [s] [] 0 1 Time [s] [] PCM: 2
sinc 関数 T = 0.25 [s] の場合 Time [s] PCM: 3
波形復元 T = 0.25 [s] x( ) x k kt sin kt T kt T 0 1 Time [s] 0 1 Time [s] 各標本値を中心とする sinc 関数に標本値を 掛けあわせたものを重ね合わせることで復元 + + + + + PCM: 4
量子化 振幅値を一定の間隔で近似 ( 線形量子化 ) 量子化結果 量子化ステップ Δ 量子化誤差 量子化入力 量子化誤差 : 量子化により発生する誤差 振幅存在範囲が L の信号を量子化ステップ Δ で B ビット量子化 B 満たすべき条件 : L 2 量子化誤差 : 量子化前の値 x i と量子化後の値 xˆi との差 e xˆ x i i i e i PCM: 5
量子化誤差の量 量子化誤差を雑音とみなすとその量はどの程度? 量子化誤差の平均パワーの算出 e i 量子化誤差が 0 平均の一様分布に従うと仮定 ( e i の分散 ) 2 2 2 1 1 1 u d u 3 2 3 2 信号の平均パワーとの比 (SN 比の算出 ) 2 u 12 信号の標準偏差 : ( 音声の場合は近似的に ) S 2 N [db] 10log10 10log 2 12 10 L 2 L 2 4 2 8 12 B 2 2 2 2 8 B 2 64 10log10 10log 2 10 2 12 12 6B 7.2[dB] 1ビット増やすと約 6 db 雑音が低減 PCM: 6
伝送量 1 秒間に送信するビット数 = bps (bi/sec) 標本化周波数 量子化ビット数 = bps (bi/sec) 例. 音声信号を 32 kbps で伝送する場合, 標本化周波数と量子化ビット数をいくつに設定するのが良い? ビット数 量子化 16 bi 32 kbps 64 kbps 128 kbps 256 kbps 14 bi 28 kbps 56 kbps 112 kbps 224 kbps 12 bi 24 kbps 48 kbps 96 kbps 192 kbps 10 bi 20 kbps 40 kbps 80 kbps 160 kbps 8 bi 16 kbps 32 kbps 64 kbps 128 kbps 6 bi 12 kbps 24 kbps 48 kbps 96 kbps 4bi 8kb kbps 16 kbps 32 kbps 64 kbps 2 bi 4 kbps 8 kbps 16 kbps 32 kbps 2kH khz 4kH khz 8kH khz 16 khz 標本化周波数 例えば S/N = 75 db とすると S/N = 63 db S/N = 51 db S/N = 39 db S/N = 27 db S/N = 15 db S/N = 3dB S/N = -9 db PCM: 7
音声符号化方式 波形符号化方式 分析合成方式 ハイブリッド方式
音声波形の分布特性を利用 音声波形の分布はガンマ分布や指数分布でよく近似 データの多いところの量子化ステップを細かく設定 μ law PCM ISDN などに使用されている方式 c ( x ) / x 1 max μ = 255 PCM c( x) x max x log 1 x log 1 max sgn( x) 0 0 x / x max 1 SP Codec: 1
適応量子化 :APCM (Adapive PCM) 入力信号の振幅に応じて適応的に量子化ステップ Δ を変更 量子化誤差を減らし, 符号化音声の品質を向上 フォワード適応型とバックワード適応型の量子化方式に分類 フォワード適応量子化 入力信号の短時間パワー値に応じて Δ を更新 短時間パワー値に応じて入力信号の振幅を変化させることで対応 短時間パワー値に関する情報も要送信 x y quanize ŷ encode c Gain adapaion G SP Codec: 2
APCM: バックワード適応量子化 符号化出力に応じて Δ 更新 余分な情報を送信する必要なし x quanize xˆ x encode c L ビット数 M ( L ) M ビット数 M ( L-1 ) 2 0.6, 2.2 3 085 0.85, 1, 1, 1.5 15 4 0.8, 0.8, 0.8, 0.8, 1.2, 1.6, 2.0, 2.4 5 0.85, 0.85, 0.85, 0.85, 0.85, 0.85, 0.85, 0.85, 12 1.2, 1.4, 14 1.6, 16 1.8 18 2.0, 2.2, 2.4, 2.6 L 1 ステップ幅の更新 M L 1 L 1 11 D c 遅延演算 : y 1 時刻前の c を L-1 とする. SP Codec: 3
差分量子化 :DPCM (Differenial PCM) 一つ前の値との差分を量子化 x xˆ 1 1 e ê quanize encode D xˆ c Local decoder 例. 量子化ステップ Δ = 1 で量子化ビット数 B = 5 の場合 ( 量子化は切り上げ ) x xˆ 1 e ê xˆ c 3.0 4.0 6.5 8.0 5.3 0 3 4 7 8 3.0 1.0 2.5 1.0-2.7 3 1 3 1-2 3 4 7 8 6 00011 00001 00011 00001 10010 SP Codec: 4
適応差分量子化 :ADPCM (Adapive Differenial PCM) PHS などに使用されている方式 x xˆ 1 1 e D ビット数 M ( L-1 ) 2 0.8, 1.6 3 0.9, 0.9, 1.25, 1.75 4 0.9, 0.9, 0.9, 0.9, 12 1.2, 1.6, 16 2.0, 20 2.4 24 5 0.9, 0.9, 0.9, 0.9, 0.95, 0.95, 0.95, 0.95, 1.2, 1.5, 1.8, 2.1 2.4, 2.7, 3.0, 3.3 ê quanize encode xˆ M L 1 M L 1 L 1 1 D c c SP Codec: 5
予測量子化 :Predicive PCM 過去の値から現在の値を予測し, 誤差を量子化 x x~ e ê quanize encode linear predicor xˆ c Local decoder 例. 量子化ステップ Δ = 1 で量子化ビット数 B = 5 で 1 線形予測器 ~ 0.5 ( つまり x zˆ 0.5 x 1 ) を用いた場合 ( 量子化は切り上げ ) x x~ e ê xˆ c 1.3 3.2 2.5-1.6-2.5 0.0 1.0 2.0 1.5-0.8 1.3 2.2 0.5-3.1-1.7 2 3 1-3 -1 2.0 4.0 3.0-1.5-1.8 00010 00011 00001 10011 10001 SP Codec: 6
予測利得 伝送路に雑音や誤りがないとし, 量子化誤差を n とすると, e x x ~ ˆ ~ ˆ x quanize e ê n x x x n e x ~ ~ ~ x~ x n linear predicor xˆ よって, この方式の SNR は E[ ] を期待値として, ] [ ] [ ] [ 2 2 2 e E x E x E SNR ] [ ] [ ] [ ] [ ] [ ] [ 2 2 2 n E e E n E SNR 量子化器の SNR 予測利得となる. 量子化器の SNR よりも予測利得だけ SNR が大きくなる. この手法を音声に適用した場合通常の予測 ( 次数 10 程度 ) の場合において量子化器の SNR 予測利得を音声に適用した場合, 通常の予測 ( 次数 10 程度 ) の場合において, 約 10 db の予測利得が期待できることが知られている. SP Codec: 7
音声生成モデルを用いた符号化方式 符号化対象を人間の音声に特化した場合, 音声の生成モデルを利用可能 SP Codec: 8
分析合成方式 音源波形をパルス列で近似することで, 送信符号量を大幅に低減! 合成音質は劣化 SP Codec: 9
ハイブリッド符号化方式 分析合成方式と波形符号化方式を併用することで, 高い音声品質を保ちつつ伝送量を削減可能 処理の流れ 分析合成方式と同様に声道特性と駆動音源特性に分離 声道特性は分析合成方式と同様に符号化 駆動音源特性 ( 残差信号 ) は波形符号化方式により符号化 残差信号の符号化法により各種方式が存在 マルチパルス方式 CELP (Code Excied dlinear Predicion) ACELP (Algebraic CELP) CS ACELP (Conjugae Srucure ACELP) SP Codec: 10
CELP 方式 ディジタル携帯電話などに使用されている方式の基礎 SP Codec: 11
CELP 方式のブロック図 聴覚的重み付けされた誤差が最小となるようにコードブックを決定 原音声 s 駆動音源音声波形 合成部合成部 駆動音源コードブック 長期予測フィルタ 短期予測フィルタ ŝˆ 聴覚的重み付けフィルタ e 自乗和 コード ゲインコード コード コード 音声スペクトルに応じて誤差を集中させる! パワー 誤差 音声 周波数 パワー 誤差 音声 周波数 SP Codec: 12
音声符号化方式の比較 波形符号化方式 : 情報量 大品質 良 分析合成方式 : 情報量 小 品質 悪 ハイブリッド方式 : 情報量 小 ~ 中 品質 普通 ~ 良 非常に良い 良い 音声声品質 普通 悪い 非常に悪い SP Codec: 13
聴覚的符号化方式
聴覚的符号化方式 対象を音声以外に広げた際には音声生成モデルの使用は困難 聴覚モデルを導入 人間の聴覚特性 : 音の強さの感じ方は周波数に応じて変化 Audiory Codec: 1
同時マスキング 大きな音と同時に鳴る小さな音は聴こえない Audiory Codec: 2
継時マスキング 大きな音の前後の小さな音は聴こえない Audiory Codec: 3
聴覚符号化方式の例 MPEG1 Audio (Moving Picure Expers Group) マスキング閾値決定 ビット割り当て情報 PCM サブバンドフィルタ 32 band, 12 sample 量子化サンプル量子化 bi sream code スケールファクタ選択 ATRAC (Adapive Transform Acousic Coding) PCM 直交ミラーフィルタ 11.025~22.05 [khz] 5.5125~11.0255125~11 [khz] 直交ミラーフィルタ 修正離散コサイン変換 修正離散コサイン変換 修正離散コサイン変換 適応ビット割り当て code 0~5.5125 [khz] マスキングや音圧等による許容雑音算出 Audiory Codec: 4
最新の低遅延音声音響統合符号化 Enhanced Voice Services (EVS) 世界の有力機関 12 社による統一規格を達成 守谷健弘, 音声音響符号化技術と3GPPでの標準化, NTT 技術ジャーナル, Apr. 2015. より転載 デモ動画 hps://www.youube.com/wach?v=slbn7qbxcjw Audiory Codec: 5