[PYTHON] Animieren Sie, was im Frequenzraum passiert, wenn die Nyquist-Frequenz überschritten wird

Einführung

Es gibt einen Abtastsatz (Abtastsatz). Durch zweimaliges Abtasten für eine Wellenlänge kann das ursprüngliche Signal vollständig wiederhergestellt werden. Dieses Abtastintervall wird als Abtastrate bezeichnet, und die Hälfte der Frequenz wird als Nyquist-Frequenz bezeichnet. Aliase treten auf, wenn das zu messende Signal die Nyquist-Frequenz überschreitet. Selbst wenn ich das als Wissen wüsste, dachte ich, ich hätte in der Animation nie gesehen, wie es im Frequenzraum jenseits der Nyquist-Frequenz aussehen würde, also habe ich es geschafft.

Referenz

Ich habe es gelesen, um mich an den Stichprobensatz zu erinnern. Ono Sokki: Über FFT Analyzer (Seite 4)

Programm

import numpy as np
import matplotlib.pyplot as plt

N = 512 #FFT Sample Score
fs = 2000.0 #Abtastrate
t = np.linspace(0.0,N/fs,N)
fft_freq = np.linspace(0.0,fs,N) #FFT-Frequenzachse
f_array = np.linspace(10.0,4000.0,200)

for i,f in enumerate(f_array):
    sig = np.sin(2.0*np.pi*f*t) * np.hamming(N)
    fft_amp = np.abs(np.fft.fft(sig)) / N * 2.0 / 0.54
    
    fig,axes = plt.subplots()
    axes.plot(fft_freq,fft_amp,label="{} Hz".format(np.round(f)))
    axes.set_xlabel("Frequency Hz")
    axes.set_ylabel("Amplitude")
    axes.set_ylim(0.0,1.1)
    axes.legend(loc="upper right")
    fig.savefig("{}.png ".format(i))
    plt.close()

Seriennummernfotos wurden mit GIMP in Animationen konvertiert.

Ergebnis

Es bewegt sich wie ein Spiegel mit der Nyquist-Frequenz. Dies gibt Ihnen eine gute Vorstellung davon, warum Sie die Nyquist-Frequenz nicht überschreiten sollten. Sie können die Frequenz dieses Mal sehen, aber wenn Sie nur das Ergebnis betrachten, können Sie nicht sagen, ob es gefaltet oder richtig gemessen wurde. ナイキスト周波数_エイリアシング.gif

Zusammenfassung

Selbst wenn Sie sich daran erinnern, dass Sie die Nyquist-Frequenz nicht überschreiten sollten, werden Sie selten sehen, was passiert, wenn Sie dies tun. Ich hoffe es hilft jemandem.

Recommended Posts

Animieren Sie, was im Frequenzraum passiert, wenn die Nyquist-Frequenz überschritten wird
Überprüfen Sie im Voraus, was passiert, wenn der Befehl ausgeführt wird
Was tun, wenn der Werttyp in Python nicht eindeutig ist?
Was ist "Mahjong" in der Python-Bibliothek? ??
Wenn das Ziel Ubuntu 16.04 in Ansible ist
Was tun, wenn das über Scrapy heruntergeladene Ergebnis auf Englisch ist?
Was tun, wenn in der Anaconda-Umgebung die Warnung "Die Umgebung ist konsistent ..." angezeigt wird
Was ist im Docker Python-Image pfeifend?
[Frage] Was passiert, wenn Sie% in Python verwenden?
Was passiert mit dem Zugriffsprotokoll, wenn der Selenium-Webdriver automatisch auf die Website zugreift?
Wenn das ausgewählte Objekt in bpy.context.selected_objects nicht zurückgegeben wird
Was zu tun ist, wenn es nicht in der Sudoers-Datei enthalten ist. Dieser Vorfall wird gemeldet.
Was tun, wenn nur das Fenster angezeigt wird und im Pygame nichts angezeigt wird?
Was ist das Domain-Attribut, das in Plotlys Layout geschrieben ist?
Einbetten in datetime, wenn nur die Zeit bekannt ist
Was ist die Aktivierungsfunktion?
Was ist die Schnittstelle für ...
Was ist die Rückruffunktion?
Geben und meinen Sie die Einschränkungsoption in scipy.optimize.minimize
[Golang] "package exec ist nicht in GOROOT" beim Ausführen des Tests
Lösung, wenn go's json.Marshal ein leeres Objekt zurückgibt
Was passiert, wenn ich die Hyperparameter von SVM (RBF-Kernel) ändere?
[Python] Was tun, wenn beim Importieren aus dem zu sys.path hinzugefügten Verzeichnis gegen PEP8 verstoßen wird?
[Python] Was ist der sortierte Schlüssel?
Was ist das X Window System?
Wofür ist der Python-Unterstrich (_)?
Wenn der Knoten in rqt_graph verschwindet
Wird der Leerzeichen bei der Verarbeitung der prozentualen Codierung durch ein Pluszeichen oder% 20 ersetzt?
Was für ein Buch ist der meistverkaufte "Python Crash Course" der Welt?
Benachrichtigen Sie mit Notification Center, wenn die Ausführungsumgebung in Python macOS ist
Was tun, wenn eine Warnmeldung in der Pip-Liste angezeigt wird?