ナイキスト周波数以下に留まっていても、私の信号はエイリアシングが発生します。私は何が欠けていますか?

私の初心者の質問の助けを前にありがとう。私はエイリアシングなしで素敵なのこぎりを作り、再生する方法を理解するためにかなりの数のリソースに相談してきましたが、私が読んできた説明だけが私をさらに混乱させてしまったので、

信号にナイキスト周波数以上の正弦波成分が含まれていないとエイリアスが発生しないはずです。したがって、安全のために、私は以下のコードを使ってのこぎり歯を作成します:

            fs = 48000;
            a = linspace(0,(fs/20),fs);
            SinAudio = sin(2*pi*a+0.5*pi);

            for i = 1:(length(amaxi)-1)
                SawElement{i} = linspace(-1, 1, (amaxi(i+1)-amaxi(i)));
            end

            % Make first sawtooth element
            Saw = linspace(0,1,amaxi(1));

            % Concatenate rest of elements
            for i = 1:length(SawElement)
                Saw = [Saw, 0, SawElement{i}];
            end

この場合、私がエイリアシングとして知覚したことは、はっきりと聞こえる低周波の多くとして明らかです。特に、私が信号を掃引するとき、そのような音が吹きます。

だから、ベース周波数は私のサンプリング周波数よりも下にあり、私は鋸歯の要素を連結する方法で、私は1から-1に行くために2つのサンプルを取る。直感的に、私はこれが間違っているように感じます。なぜなら、あなたが個々の正弦波からそのような信号を作り出すならば、たくさんの高調波が必要になるからです。

しかし、私はこのような正弦波を作成するときよりも、そこに高調波は存在しないはずです。

fs = 48000;
a = linspace(0,(fs/4),fs);
x = sin(2*pi*a+0.5*pi);

これはナイキスト周波数の半分の周波数を持つ正弦波であるため、私はエイリアシングを期待しませんでした...私は思いますか?

ですから、私の質問は次のとおりです: 1)ナイキスト周波数の半分で最大周波数の生成信号がエイリアスになっているのはなぜですか? 2)帯域制限されたノコギリ波または方形波を作成するにはどうすればよいですか?私はウェーブテーブル合成を使ってみましたが、結果の信号をまだテストしていませんが、バンド幅のあるウェーブテーブル合成が上記の2つのコードからどのように異なる結果をもたらすかはわかりません。最終的に、私の信号がどのように生成されても、2〜3サンプルの間に、私の信号が1から-1に変化する点があります。

前もってありがとう、私は本当にこれの上に私の頭を壊している....

ポール

0
のこぎりは、バンド限定ではありません。
追加された 著者 Namey,
アナログのノコギリ波をサンプリングする場合、エイリアシングについて心配するかもしれませんが、ノコギリ波を合成する場合、エイリアシングについて心配する必要はありません。なぜエイリアシングがあると思いますか?
追加された 著者 Ed Mallon,
ああ、私はこれを言及すべきでした(元の郵便にそれを編集するでしょう)が、それは非常にはっきりと聞こえる.. 5または6Khzの上で聞こえる多くの低周波があります。特に、異なる急峻さのSawElementsを連結して周波数掃引を行うと、非常に明確な低周波バブリング音が聞こえます。また、私の状況と非常によく似た問題を説明するこの質問を読んだところ、波形帯域制限のための dsp。 stackexchange.com/questions/15974/…
追加された 著者 jjcomer,
@バットマン、私はシンセサイザーのように鋸歯に近似するものを再生したい。私はそれが帯域制限されたのこぎりと呼ばれていると信じていますが、私が間違っていれば私を修正します。私の質問は変わりません。
追加された 著者 jjcomer,

答えはありません

0