exemplo de um simples filtro mediano
quando aplicado em imagens elas tende a ficar mais borradas
- Código:
#!/usr/bin/python3
#by kodo no kami
import numpy as np
import scipy as scp
import matplotlib.pyplot as mpl
import random
fs = 30 #amostragem
tamanho = 5 #tamanho da media movel
sinal = scp.rand(fs) * 100
sinal2 = []
media = []
#gera o tamanho para a media movel
cont_m = 0
while(cont_m < tamanho):
media.append(50)
cont_m += 1
#aplica o filtro na media movel
cont_s = 0
while(cont_s < len(sinal)):
mediam = (sinal[cont_s] + sum(media)) / (len(media) + 1)
sinal2.append(mediam)
media.pop(0)
media.append(mediam)
cont_s += 1
#plota
mpl.plot(sinal,"r")
mpl.plot(sinal2,"b")
mpl.legend(["sinal","filtrado"])
mpl.show()
quando aplicado em imagens elas tende a ficar mais borradas