[PYTHON] Créer un filtre avec scipy

Continuez à lire l'histoire. Quand je regardais la référence officielle, j'ai trouvé une fonction pour créer un filtre, donc j'ai immédiatement expérimenté. Cette fois, j'ai fait un filtre passe-bas par la méthode remez et la méthode de la fonction de fenêtre.

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__':
    #La zone de passage est de 0 à 0 avec 64 taps.25,La zone de blocage est 0.3〜0.5 filtres
    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()

La méthode de la fonction de fenêtre était étonnamment bonne. Il est facile de définir les paramètres, et je pense que c'est mieux si vous voulez l'utiliser avec désinvolture.

filter_design.png

Recommended Posts

Créer un filtre avec scipy
LPC avec Scipy
ICA avec Scipy
CORDIC avec Scipy
Créez des jeux avec Pygame
Créer un diagramme de dispersion 3D avec SciPy + matplotlib (Python)
Normariser les données avec Scipy
Traitement FFT avec filtre numpy et scipy vers passe-bas
Créer un environnement avec virtualenv
Créez Cloud TPU avec tf-nightly
Créer une API avec Django
Créer / rechercher / créer une table avec PynamoDB
Créer un gif 3D avec python3
tracé Créer un graphique avec un bouton
Créer une page d'accueil avec django
[Python] Filtrer les feuilles de calcul avec gspread
Créer une visionneuse d'images avec Tkinter
Créez des règles personnalisées avec ElastAlert
Créez une carte des brevets avec Streamlit
Utilisez OpenBLAS avec numpy, scipy
Créer un répertoire avec python
Estimation des paramètres avec le filtre de Kalman
Extraire la valeur de crête avec scipy
Créer un fichier xlsx avec XlsxWriter
Moyenne harmonique par Python (en utilisant SciPy)
Calculer la distribution de l'échantillon avec Scipy (distribution discrète)
Créer Awaitable avec l'API Python / C
Créer un défilement d'écran avec Pythonista + scene
Générer une distribution normale avec SciPy
[AWS] Créer une API avec API Gateway + Lambda
Créez un environnement virtuel avec Python!
Faisons une image LGTM avec GIMP! (Python-fu)
Créez dynamiquement de nouvelles trames de données avec des pandas
Créez des algorithmes de base avec Smart Trade
Détection de point de changement avec filtre de Kalman
Créer un filtre avec un modèle django
Créez une API en utilisant hug avec mod_wsgi
Créez une tranche d'âge avec les pandas
Créez un stepper de poisson avec numpy.random
Créer des pages github avec lektor partie 1
Créer un téléchargeur de fichiers avec Django
Traitement d'image par Python 100 knock # 10 filtre médian
Créer une application en classifiant avec Pygame
Créer un décorateur de fonction Python avec Class
Créer une API RESTful avec Django Rest Framework
Créez wordcloud à partir de votre tweet avec python3
Créer une visionneuse de traitement d'image avec PySimpleGUI
Créez une image factice avec Python + PIL.
Gestion facile des filtres avec l'option -m de Python
Créez votre propre serveur DNS avec Twisted
[Python] Créez un environnement virtuel avec Anaconda
Créons un groupe gratuit avec Python
Créez rapidement un fichier Excel avec Python #python
Créez votre propre valeur composite avec SQLAlchemy
Créer une application graphique avec Tkinter de Python
Créer un environnement Python + uWSGI + Nginx avec Docker