[PYTHON] Erstellen Sie einen Filter mit scipy

Fahren Sie mit der Geschichte fort. Als ich mir die offizielle Referenz ansah, fand ich eine Funktion zum Erstellen eines Filters und experimentierte sofort. Dieses Mal habe ich einen Tiefpassfilter nach der remez-Methode und der Fensterfunktionsmethode erstellt.

filter.py


#!/usr/bin/env python
# -*- coding: utf-8 -*-

import scipy as sp
import numpy as np
import matplotlib.pyplot as plt
from scipy import signal

if __name__ == '__main__':
    #Der Durchgangsbereich ist 0 bis 0 mit 64 Taps.25,Der Sperrbereich ist 0.3〜0.5 Filter
    taps = 64;
    edge = [ 0,  0.25 , 0.3, 0.5 ]
    gain = [ 1.0,  0.000 ]
    weight = [ 0.2, 1.0 ]

    remez_impres = sp.signal.remez( taps,  edge, gain )
    remez_freq, remez_fresponse = sp.signal.freqz( remez_impres )
    remez_amp = np.abs( remez_fresponse )

    wf_impres = sp.signal.firwin( taps, 2.0 * edge[1] );
    wf_freq, wf_fresponse = sp.signal.freqz( wf_impres )
    wf_amp = np.abs( wf_fresponse )

    plt.subplot(221)
    plt.semilogy( remez_freq / ( 2 * np.pi ),  remez_amp, 'b-' )
    plt.title( 'Frequency Response( Remez )' )

    plt.subplot(222)
    plt.plot( remez_impres, 'b-' )
    plt.title( 'Impres Response( Remez )' )

    plt.subplot(223)
    plt.semilogy( wf_freq / ( 2 * np.pi ),  wf_amp, 'b-' )
    plt.title( 'Frequency Response( Window )' )

    plt.subplot(224)
    plt.plot( wf_impres, 'b-' )
    plt.title( 'Impres Response( Window )' )
    plt.show()

Die Fensterfunktionsmethode war unerwartet gut. Es ist einfach, Parameter einzustellen, und ich denke, dies ist besser, wenn Sie es beiläufig verwenden möchten.

filter_design.png

Recommended Posts

Erstellen Sie einen Filter mit scipy
LPC mit Scipy
ICA mit Scipy
CORDIC mit Scipy
Erstelle Spiele mit Pygame
Erstellen Sie ein 3D-Streudiagramm mit SciPy + matplotlib (Python)
Daten mit Scipy normieren
FFT-Verarbeitung mit numpy und scipy bis Tiefpassfilter
Erstellen Sie eine Umgebung mit virtualenv
Erstellen Sie Cloud-TPU mit tf-nightly
Erstellen Sie eine API mit Django
Erstellen / Suchen / Erstellen einer Tabelle mit PynamoDB
Erstellen Sie ein 3D-GIF mit Python3
Plotly Erstellen Sie ein Diagramm mit einer Schaltfläche
Erstellen Sie eine Homepage mit Django
[Python] Filtern Sie Tabellenkalkulationen mit gspread
Erstellen Sie den Image Viewer mit Tkinter
Erstellen Sie benutzerdefinierte Regeln mit ElastAlert
Erstellen Sie eine Patentkarte mit Streamlit
Verwenden Sie OpenBLAS mit numpy, scipy
Erstellen Sie ein Verzeichnis mit Python
Parameterschätzung mit Kalman-Filter
Spitzenwert mit scipy extrahieren
Erstellen Sie eine Xlsx-Datei mit XlsxWriter
Harmonischer Mittelwert von Python (mit SciPy)
Berechnen Sie die Probenverteilung mit Scipy (diskrete Verteilung)
Erstellen Sie Awaitable mit der Python / C-API
Erstellen Sie eine Bildlaufrolle mit Pythonista + -Szene
Generieren Sie mit SciPy eine Normalverteilung
[AWS] API mit API Gateway + Lambda erstellen
Erstellen Sie eine virtuelle Umgebung mit Python!
Machen wir ein LGTM-Bild mit GIMP! (Python-Fu)
Erstellen Sie mit Smart Trade grundlegende Algorithmen
Änderungspunkterkennung mit Kalman-Filter
Machen Sie einen Filter mit einer Django-Vorlage
Erstellen Sie eine API mit hug mit mod_wsgi
Erstellen Sie eine Altersgruppe mit Pandas
Erstellen Sie einen Poisson-Stepper mit numpy.random
Erstellen Sie Github-Seiten mit Lektor Part 1
Erstellen Sie mit Django einen Datei-Uploader
Bildverarbeitung mit Python 100 Knock # 10 Medianfilter
Erstellen Sie eine Anwendung, indem Sie mit Pygame klassifizieren
Erstellen Sie mit Class einen Python-Funktionsdekorator
Erstellen Sie eine RESTful-API mit dem Django Rest Framework
Erstellen Sie mit python3 eine Wortwolke aus Ihrem Tweet
Erstellen Sie mit PySimpleGUI einen Bildverarbeitungs-Viewer
Erstellen Sie mit Python + PIL ein Dummy-Image.
Einfache Filterverwaltung mit der Option -m von Python
Erstellen Sie mit Twisted Ihren eigenen DNS-Server
[Python] Erstellen Sie mit Anaconda eine virtuelle Umgebung
Erstellen wir mit Python eine kostenlose Gruppe
Erstellen Sie schnell eine Excel-Datei mit Python #python
Erstellen Sie mit SQLAlchemy Ihren eigenen zusammengesetzten Wert
Erstellen Sie eine GUI-App mit Tkinter of Python
Erstellen Sie mit Docker eine Python + uWSGI + Nginx-Umgebung