Processamento de sinal círculo

Processamento de sinal círculo
O Python é uma linguagem de programação completa que ajuda os desenvolvedores a criar sites, aplicativos, sucata na web, automação de tarefas, etc. O Python não é especializado em nenhum campo; Ele permite que desenvolvedores e cientistas resolvam problemas científicos e matemáticos. Scipy é uma biblioteca de Python e abrange implementações altamente otimizadas. Scipy é usado para processamento de sinal, otimização, interpolação e integração. Scipy torna a vida de um desenvolvedor mais segura e simples, fornecendo sub -pacotes como otimizar, sinalizar, io, ndimage e muito mais. Estamos discutindo o processamento do sinal cipy que o beneficiará na implementação de funções de processamento de sinais no Python.

O que é o processamento de sinal scipy na linguagem Python?

Scipy é a biblioteca mais exigente do Python e se baseia na matriz Numpy usada para computação científica. Módulos Scipy Herited, como processamento de imagens, transformações de Fourier, etc. Scipy é a primeira biblioteca que os desenvolvedores pensam ao considerar o processamento de sinais. O Scipy fornece o pacote de sinal que contém funções de filtro com ferramentas de design de filtro.

Scipy Module Scipy.O sinal é usado para processamento de sinal. O processamento de sinal é uma caixa de ferramentas que contém duas variedades de filtros para executar diferentes tipos de operações: linear e não linear. Analisando, manipulando e gerando sinais, como sons, fotos, etc., é o assunto do processamento de sinal. Projetamos, filtramos e interpolamos dados unidimensionais e bidimensionais usando algumas das funções oferecidas pela Scipy. O sinal no processamento de sinal é uma variedade de números reais ou complexos. Existem inúmeras funções para filtrar e analisar vários tipos de sinais no sub -pacote do Signal Scipy.

Sintaxe do processamento de sinal círculo

A sintaxe do pacote de processamento de sinal de scipy tem muitas funções como splines b, filtragem, etc.

A função depende do número de argumentos, e o nome da função é diferente; Como discutimos acima, os dois tipos de operação na filtragem são lineares e não lineares. As equações lineares, complicadas e de diferença estão incluídas. Na sessão seguinte, discutiremos o pacote de sinal em detalhes com a ajuda de exemplos simples e compreensíveis. Como sabemos que os pacotes têm muitos módulos ou funções, realizamos exemplos práticos com a ajuda de algumas funções mencionadas de picante.sinaliza de uma maneira fácil.

Exemplo 1

Este exemplo é muito simples e pertence à operação de filtragem linear significa convolução. O processo de convolução implica a multiplicação de duas matrizes também envolvidas na filtragem, o que é uma função do pacote de sinal. Para a convolução, precisamos de dois parâmetros no sinal.Função de convolução. Os parâmetros devem estar na forma de matrizes. Então, neste exemplo, entenderemos claramente o funcionamento da biblioteca de sinais. O seguinte código de amostra é fornecido para sua referência:

importar numpy como np
do sinal de importação ccepy
De importação ccepy otimize
importar matplotlib.pyplot como plt
Array1 = np.Array ([12.0, 14.0, 16.0])
Array2 = np.Array ([2.0, 6.0, 3.0, 1.0])
resultado = sinal. compvolvê -lo (Array1, Array2)
Imprimir (resultado)

Neste exemplo anterior, pegamos uma matriz N-D e realizamos a convolução de duas matrizes denominadas Array 1 e a Array 2. A explicação do código é importar todas as bibliotecas uma por uma. Numpy é usado para matriz numérica e scipy.A biblioteca de sinais é usada para filtrar. Afinal, matrizes declaradas e inicializadas com nomes, como Array1 e Array2 são matrizes unidimensionais. Essas matrizes continham valores flutuantes. A biblioteca Numpy é chamada para cada matriz neste programa.

Finalmente, passou as duas matrizes como um parâmetro no sinal.Função com convolve () e atribua um valor de retorno da função à variável de resultado. Ligue para a variável de resultado na instrução de impressão para saída de exibição na tela. A captura de tela a seguir nos mostra a saída gerada:

Aqui, depois de multiplicar duas matrizes, o resultado é [24.0 100.0 152.0 150.0 62.0 16.0]

Exemplo 2

Este exemplo é sobre o filtro de equação de diferença, que é a função do pacote de sinal. A função do filtro de equação de diferença é usada para encontrar vetores de condição inicial. A equação de diferença em um programa é escrita como uma palavra-chave lfilter.

importar numpy como np
do sinal de importação ccepy
a = np.Array ([3.0, 0.0, 2.0, 6.0])
b = np.Array ([5.0/2, 1.0/5])
y = np.Array ([2.0, -2.0/5])
var = sinal.lfilter (a, b, y)
Imprimir ('o valor do filtro da equação da diferença é:', var)

Primeira linha Importar Numpy Library Alias ​​NP. Agora, a matriz Numpy é usada no programa como NP. Na segunda linha, importe o pacote de sinal da biblioteca scipy. Na terceira linha, matriz declarada e inicializada com o nome "A". Na quarta linha, declarou e inicializado a matriz com o nome "B". Na quinta linha, declarou e inicializado a matriz com o nome "y". Chamamos todas as matrizes com a ajuda da biblioteca Numpy. Após essa linha, chamamos a função de equação de diferença com a ajuda de um pacote de sinal. Passamos matrizes como um parâmetro da função. Declaramos a variável "var" e atribuímos um valor da função. Por fim, exibimos saída na tela pela instrução de impressão. A captura de tela a seguir é a saída gerada deste programa:

A condição inicial do vetor é [2.4 -0.672]

Exemplo 3

Este exemplo é sobre um novo ccepy.Função de sinal usada para projetar um filtro IIR que é iirfilter. Nesta função, passamos argumentos e um tipo de filtro que é elíptico.

importar numpy como np
do sinal de importação ccepy
importar matplotlib.pyplot como plt
a, d = sinal.iirfilter (2, wn = 0.4, rp = 6, rs = 70, btype = 'highpass', ftype = 'ellip')
f, x = sinal.Freqz (A, D)
plt.título ('Resposta da frequência digital')
plt.Lote (F, 30*NP.log10 (np.ABS (x))))
plt.ylabel ('ampliário')
plt.xlabel ('frequência')
plt.mostrar()

Na captura de tela de código anterior, importar bibliotecas Numpy, Signal e Pyplot com sucesso. Depois de importar bibliotecas e pacotes, chamado de sinal.Irrfilter () e argumentos de passagem corretamente, o tipo de filtro deve ser ellip porque encontramos aqui um elípticos de passa-alto passa. Declaramos duas variáveis ​​e atribuímos o valor da função a essas duas variáveis, respectivamente. Aqui, tomamos duas variáveis ​​lado a lado porque desenhamos gráficos com os valores do eixo x e Y.

Depois disso, chamamos a função relacionada à frequência que é Freqz e passamos as variáveis ​​anteriores como um parâmetro de sinal.Freqz (). Declaramos as variáveis ​​F e X e atribuímos o valor do sinal.Freqz () para F e X. Depois disso, chamamos a biblioteca Matplotlib para desenhar um enredo com o título de "resposta da frequência digital". Isso significa que o título do gráfico é "resposta da frequência digital". Depois disso, plotamos o gráfico pelo rótulo do eixo x e do eixo y. No final, chamamos a função show () para exibir o gráfico na saída. A captura de tela a seguir é a saída gerada deste código:

Este gráfico nos mostra um elíptico passa-alto.

Conclusão

Concluímos que este artigo é sobre o processamento de sinais de scipy usado para filtrar e gerar sons de diferentes tipos. Este pacote contém funções diferentes que são usadas para vários fins. Com a ajuda dos exemplos dados, aprendemos como usamos o processamento de sinais e em qual situação usamos o processamento de sinais, que é um pacote de biblioteca scipy na linguagem Python. Você também pode gerar seus programas depois de praticar os exemplos anteriores e modificar esses exemplos também.