調波解析の誤差は音量・音高のずれ・窓長でどう変わるか
現ベースApronが使うHMPPと、既存のHMCZTを人工信号で比べました。追加5実験の456回はすべて成功しましたが、自然音声の音質を測った結果ではありません。Apronを維持し、方式の置換はしません。
- 小音量ではHMPPの振幅誤差が大きくなりました。入力を1億分の1にした条件の平均絶対誤差は約51.5~51.7 dBで、HMCZTは同じ8条件で約0.00059~0.0021 dBでした。
- 照会するF0のずれには別の傾向があります。±5 centの条件では、主帯域の調波をまとめたHMCZTの平均絶対誤差は約1 dBでした。音量への強さだけで一律に置換できません。
- 定常信号では短い窓(L=2)の誤差が大きく、音高が動くとL=4からL=6への変更で誤差が増えました。長いほど良いとは限りません。
- 時間とともに振幅だけを変えた範囲では、変化は比較的小さく、位相やF0に依存しました。
各条件の厳密な値と順位は下表に示します。振幅誤差の単位はdB、F0誤差の単位はcentです。測った性質と分母が違うため、5実験を一つの点数にまとめません。
試聴音声はありません。直接調波解析とF0再推定だけを調べ、声道・雑音・復号・MOSは測っていないためです。自然音声での比較と音声は既存の120録音比較を参照してください。先の音高変化の実験とは測定条件を分けています。
条件と読み方
全信号は24 kHz、1921標本、中心40 ms。中心F0は100または200 Hz、中心で8 kHz以下の調波を含みます。位相は全0、全π/2、正負の二次位相の4種類です。主帯域は500~8000 Hz、低域は500 Hz以上4000 Hz未満、高域は4000~8000 Hzです。順位は丸め前の主帯域平均絶対振幅誤差によります。
aは4周期の間の振幅変化量、gainは信号全体の倍率、centは照会F0のずれ、Lは窓の周期数、r_tenthsは音高変化率rの10倍です。窓長実験は物理的な音高軌跡を固定し、Lを変えても変化率の基準を4周期のままにしています。照会F0を変える実験では、分析周波数と窓長が同時に変わります。
同じ制御信号を別実験でも測っています。たとえば振幅変化なしとgain=1の8入力・16出力はbit単位で一致しました。同じ信号を独立した自然音声として数えていません。
入力の音量
80回の呼出しはすべて成功しました。表は主帯域の平均絶対誤差と95パーセンタイル(dB)です。各行内の順位だけを示し、方式全体の音質順位ではありません。低域・高域と残る統計は元の集計JSONに保存しています。
照会する基本周波数
80回の呼出しはすべて成功しました。表は主帯域の平均絶対誤差と95パーセンタイル(dB)です。各行内の順位だけを示し、方式全体の音質順位ではありません。低域・高域と残る統計は元の集計JSONに保存しています。
解析窓の長さ
144回の呼出しはすべて成功しました。表は主帯域の平均絶対誤差と95パーセンタイル(dB)です。各行内の順位だけを示し、方式全体の音質順位ではありません。低域・高域と残る統計は元の集計JSONに保存しています。
振幅の時間変化
80回の呼出しはすべて成功しました。表は主帯域の平均絶対誤差と95パーセンタイル(dB)です。各行内の順位だけを示し、方式全体の音質順位ではありません。低域・高域と残る統計は元の集計JSONに保存しています。
基本周波数の再推定
72回すべて成功。4位相の平均絶対誤差をcentで示します。ここでは調波解析の方式を比較していません。初期値を±20 centずらした48条件では誤差が減り、正解から始めた24条件では非ゼロになりました。後者の出発点は誤差0であり、一般的な悪化率とは解釈しません。
全72条件と18群のJSON
なぜ一つの方式に決められないのか
HMPPはスペクトルに10⁻⁸を足してから対数化します。小振幅で観測された正の偏りは、この絶対値の床と整合します。ただし今回の測定は床だけを変更した因果実験ではありません。HMCZTは既知F0の整数倍を直接評価するため、F0が正しい定常条件では良好でも、照会F0がずれたり音高が動いたりすると別の誤差を生みます。
両経路の周期Blackman窓と厳密算術の振幅規格化は同じです。HMPPではFFT格子、ピーク探索と二次補間が加わります。CZTという名称自体は、時間変化するF0に適応することを意味しません。短い窓では、HMPP内の規格化用1024標本参照FFTに実際のFFT長より長い配列を渡しますが、そのスペクトルは結果に使われません。係数の計算と破棄されるFFTを区別しています。
監査と残る制約
保存された原値から独立に、B・C・Dの各240群、Fの432群、Eの72条件・18群と対応差を照合しました。入力式、float32変換、出力配列、manifestのSHAも確認しました。これは保存値の算術監査であり、独立したnative再実行ではありません。
Cの梱包に記録された一部の展開済みソース・静的ライブラリのパスは、そのZIPだけでは揃いません。上流tarの照合と独立算術監査は通っていますが、同梱audit.pyを新規展開先でそのまま実行できるとは主張しません。Dでは保存後の集計処理を修正した記録があります。native解析の再実行で値を選び直したものではありません。
自然音声、無声の確率、オクターブの曖昧さ、声道・発声源の分離、48 kHz、知覚品質はここでは未評価です。次は入力振幅の調整と逆変換による部品診断を別の固定計画で行い、絶対振幅への依存と残る非定常誤差を分けます。
詳細な条件・出典 / 監査と測定件数 / 表示用の保存値一覧