量子化誤差はどのようにノイズを生成しますか?


11

自分でサンプリングとDSPについて学んでいます。量子化誤差がノイズになる原因を理解するのに苦労しています。基本的な理解が欠けていると思いますが、それが何かはわかりません。では、量子化誤差はどのようにノイズを生成するのでしょうか?


それはノイズよりも歪みです。信号に依存し、ランダムではありません。
内部石

エンドリス、私が理解していないのは、エラーがどのように周波数につながるかです。
Jan Deinhard

2
歪みは常に追加の周波数を生成します。正弦波を歪ませると、別の繰り返し波形になります。正弦波以外の繰り返し波形は、複数の周波数で構成されています。
内部石

1
@endolithが述べたように、純粋なトーンを与えるなど、非常に悪いADCを持っているが、サインのように見えるが大きなステップを持つ信号を取得するとします。(これで、信号は元のサインで上下する階段のように見えます。)これで、ステップは多くの周波数で構成されていることが直感的にわかります。これは、ADCが要求どおりに周波数を追加する方法です。それは非線形操作です。線形の場合、新しい周波数を作成できず、それらの多くを重ね合わせるだけです。
Spacey

もう1つの注釈:優れた解釈は、ICASSP 2004でYannis Tsividisによって与えられています。サンプリングプロセスでは、それらすべてが折りたたまれます。十分に複雑な信号の場合、これらの「ダウンフォールドされた高調波」はホワイトノイズフロアのように見えます。
divB 2018

回答:


6

マルチトーン信号があると仮定します(6つのキャリア、サンプリング周波数の±1/1000、±2/1000および±7/1000)。

x = (1:1000);
wave = sin(x/1000*2*pi) + sin(x/1000*2*pi*2) + sin(x/1000*2*pi*7);

これは14ビットADCを使用して量子化されます

wave_quant = round(wave * 16384) / 16384;

違い

wave_qnoise = wave_quant - wave;

量子化誤差を与える

時間による量子化ノイズ

対応するスペクトル

wave_qnoise_freq = mag(fftshift(fft(wave_qnoise)) / sqrt(1000));

周波数による量子化ノイズ

は、スペクトル全体で生成されたノイズフロアを示しています。

これは、量子化誤差がバイアスを導入しないことを前提としています。ADCが常に低い値を選択する場合

wave_quant_biased = floor(wave * 16384) / 16384;

ゼロを中心としない量子化エラーが発生します

wave_qnoise_biased = wave_quant_biased - wave;

時間によるバイアスのある量子化誤差

DCビンのFFTに明確なスパイクがあります

wave_qnoise_biased_freq = mag(fftshift(fft(wave_qnoise_biased)) / sqrt(1000));

周波数によるバイアスのある量子化誤差

これは、たとえば、直交振幅変調で実際の問題となり、復調信号のDCオフセットは、復調周波数での正弦波に対応します。


これはあなたの助けをありがとう非常に素晴らしいです。このようにして、量子化に関連する歪みを調査しました。

9

この文脈での「ノイズ」とは、信号に不要なものが追加されていることを指します。ガウスノイズ、ホワイトノイズ、またはよく説明されているランダムなプロセスであるとは限りません。

量子化の文脈では、それは純粋に代数的な議論です。量子化は、元の信号と量子化信号の差に等しい不要な信号(「ノイズ」)の追加と見なすことができます。この定量化ノイズはランダムではなく、入力信号と相関していることに注意してください。たとえば、信号が周期的である場合、それを量子化するときに導入される量子化ノイズも周期的です。


量子化によってエラー自体がどのように発生するかは理解できたと思います。私を困惑させるのは、それがどのように周波数を生成するかです。「不要な信号」とは、不要な周波数を意味します。純粋な正弦波信号をサンプリングするとします。次に、量子化誤差により「倍音」が発生します。倍音は、サンプリングされた信号の「階段」形状に由来すると思います。あれは正しいですか?
Jan Deinhard

1
@FairDinkumThinkum:はい、純粋な正弦波を歪めると、高調波歪みが発生し、正弦波の周波数の倍数で新しい周波数が生成されます。en.wikipedia.org/wiki/Distortion#Harmonic_distortion
endlith

3

ピシェネットの発言をさらに詳しく説明するには、0.01ボルトの解像度しかないD / Aコンバーターによってデジタル化されているオーディオ信号があるかどうかを検討してください。ある特定の瞬間に、オーディオ信号が7.3269ボルトである場合、7.33ボルトに丸められるか、7.32ボルトに切り捨てられます(コンバーターの設計によって異なります)。最初のケースでは、7.33〜7.3269ボルト、つまり0.0031ボルトの「ノイズ」を追加しました。2番目のケースでは、7.32〜7.3269ボルト、または-0.0069ボルトの「ノイズ」を追加しました。

もちろん、コンバーターは間違いなく無限に正確ではなく、おそらくその精度と同等の精度を持っているため、追加のノイズが追加されます。


0

基本的なポイントを理解するためのより基本的な説明を次に示します。

  1. ポケットに手を入れて、iPhoneを取り出します。
  2. 健康アプリを開く->フィットネス活動->歩数(これはデフォルトでオンになっています)。
  3. 過去10日間のそれぞれの間に歩いた歩数を書き留めます。

それらの数を数千に丸めて、ここに投稿します。ここで、他の人々はあなたが投稿した内容に基づいて元の数を推測する必要があります。

他の人々はあなたが提供した丸められた数に基づいて正確な数を確実に推測することはできません。それはデータ損失です。この場合(丸めを使用したため)、これは量子化誤差と呼ばれます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.