python 实现matlab,基于python实现matlab filter函数过程详解

基于python实现matlab filter函数过程详解

matlab中的filter函数:

y = filter(b,a,x)

python实现matlab中的filter函数

def filter_matlab(b,a,x):

y = []

y.append(b[0] * x[0])

for i in range(1,len(x)):

y.append(0)

for j in range(len(b)):

if i >= j :

y[i] = y[i] + b[j] * x[i - j ]

j += 1

for l in range(len(b)-1 ):

if i >l:

y[i] = (y[i] - a[l+1] * y[i -l-1])

l += 1

i += 1

return y

example:

b = [8,-3.5,0.5]

a = [1,-1.5,0.25]

x = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]

y = filter_matlab(b,a,x)

函数的结果和matlab的filter函数结果一致,为

[8,

24.5,

52.25,

94.75,

156.5625,

243.65625,

363.84375,

527.3515625,

747.56640625,

1042.01171875,

1433.6259765625,

1952.43603515625,

2637.74755859375,

3541.0123291015625,

4729.581604003906,

6291.619323730469,

8342.533584594727,

11033.395545959473,

14561.959922790527,

19187.090997695923]

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

时间: 2020-06-07

map()函数可以对一个数据进行同等迭代操作.例如: def f(x): return x * x r = map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9]) print(list(r)) map函数传入的第一个参数就是函数本身,即f.第二个参数是要操作的数据 map() 作为高阶函数,事实上它把运算规则抽象了,因此,我们不但可以计算简单的 f(x)=x 2 ,还可以计算任意复杂的函数,比如,把这个list 所有数字转为字符串: print(list(map(str, [1,

事情是这样的,我写了一个tornado的服务,过程当中我用logging记录一些内容,由于一开始并没有仔细观察tornado自已的日志管理,所以我就一般用debug来记录普通日志,error记录有问题的日志,但是当服务跑起来以后才发现,tornado的访问日志的级别是info,也就是20,debug是10的,所以如果我定义了日志的级别是debug,那么默认情况下肯定也会输出到日志文件中的. 但是我现在并不关心访问日志,而且由于我这个服务可能每时每刻都会有访问,这样在我对日志信息进行搜索的时候就会

6b5aa0751a6f1e6a9d0b665a02cc1f46.gif

本文实例讲述了Python图像滤波处理操作.分享给大家供大家参考,具体如下: 在图像处理中,经常需要对图像进行平滑.锐化.边界增强等滤波处理.在使用PIL图像处理库时,我们通过Image类中的成员函数filter()来调用滤波函数对图像进行滤波,而滤波函数则通过ImageFilter类来定义的. 下面先直接看一个样例: #-*- coding: UTF-8 -*- from PIL import Image from PIL import ImageFilter def image_filter

在 Python中,认为以下值为假: None # None值 False # False值 0 # 数值零不管它是int,float还是complex类型 '',(),[] # 任何一个空的序列 {} # 空的集合 如果一个列表中含上面值为假的元素,要去除的话,可以使用内置函数的filter默认的参数None. 可以先看下filter内置函数的帮助文档 >>> help(filter) Help on built-in function filter in module __built

现有两个元组(('a'),('b')),(('c'),('d')),请使用python中匿名函数生成列表[{'a':'c'},{'b':'d'}] t1 = (('a'), ('c')) t2 = (('b'), ('d')) print(list(map(lambda t: {t[0]: t[1]}, zip(t1, t2)))) l = lambda t1, t2: [{i: j} for i, j in zip(t1, t2)] print(l(t1, t2)) map内置函数使用: ma

例子一 def filter(self, record): """Our custom record filtering logic. Built-in filtering logic (via logging.Filter) is too limiting. """ if not self.filters: return True matched = False rname = record.name # shortcut for name i

一.filter函数简介 filter函数主要用来筛选数据,过滤掉不符合条件的元素,并返回一个迭代器对象,如果要转换为列表list或者元祖tuple,可以使用内置函数list() 或者内置函数tuple()来转换: filter函数接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判,然后返回 True 或 False,最后将返回 True 的元素放到新列表中,就好比是用筛子,筛选指定的元素; 语法: filter(function, iterable) 参数: fu

本文实例讲述了Python实现PS滤镜特效Marble Filter玻璃条纹扭曲效果.分享给大家供大家参考,具体如下: 这里用 Python 实现 PS 滤镜特效,Marble Filter, 这种滤镜使图像产生不规则的扭曲,看起来像某种玻璃条纹, 具体的代码如下: import numpy as np import math import numpy.matlib from skimage import io import random from skimage import img_as_f

python 实现matlab,基于python实现matlab filter函数过程详解_第1张图片

本文实例讲述了Python实现PS滤镜特效之扇形变换效果.分享给大家供大家参考,具体如下: 这里用 Python 实现 PS 滤镜中的一种几何变换特效,称为扇形变换,将图像扭曲成一个扇形,具体的算法原理和效果图可以参考附录说明 import numpy as np from skimage import img_as_float import matplotlib.pyplot as plt from skimage import io import math import numpy.matl

python 实现matlab,基于python实现matlab filter函数过程详解_第2张图片

本文实例讲述了Python实现PS滤镜碎片特效功能.分享给大家供大家参考,具体如下: 这里用 Python 实现 PS 滤镜中的碎片特效,这个特效简单来说就是将图像在 上,下,左,右 四个方向做平移,然后将四个方向的平移的图像叠加起来做平均.具体的效果图与说明可参考附录说明 from skimage import img_as_float import matplotlib.pyplot as plt from skimage import io file_name='D:/Visual Eff

python 实现matlab,基于python实现matlab filter函数过程详解_第3张图片

本文实例讲述了Python实现PS滤镜功能之波浪特效.分享给大家供大家参考,具体如下: 这里用 Python 实现 PS 滤镜的波浪特效,具体效果可以参考附录说明 import numpy as np from skimage import img_as_float import matplotlib.pyplot as plt from skimage import io import numpy.matlib import math file_name2='D:/Visual Effects

python 实现matlab,基于python实现matlab filter函数过程详解_第4张图片

本文实例讲述了Python实现PS滤镜的万花筒效果.分享给大家供大家参考,具体如下: 这里用 Python 实现 PS 的一种滤镜效果,称为万花筒.也是对图像做各种扭曲变换,最后图像呈现的效果就像从万花筒中看到的一样: 图像的效果可以参考附录说明.具体Python代码如下: import matplotlib.pyplot as plt from skimage import io from skimage import img_as_float import numpy as np impor

python 实现matlab,基于python实现matlab filter函数过程详解_第5张图片

本文实例讲述了Python实现PS滤镜的旋转模糊功能.分享给大家供大家参考,具体如下: 这里用 Python 实现 PS 滤镜中的旋转模糊,具体的算法原理和效果可以参考附录相关介绍.Python代码如下: from skimage import img_as_float import matplotlib.pyplot as plt from skimage import io import numpy as np import numpy.matlib file_name='D:/Visual

python 实现matlab,基于python实现matlab filter函数过程详解_第6张图片

本文实例讲述了Python实现PS滤镜中马赛克效果.分享给大家供大家参考,具体如下: 这里利用 Python 实现PS 滤镜中的马赛克效果,具体的算法原理和效果可以参考附录说明,Python示例代码如下: from skimage import img_as_float import matplotlib.pyplot as plt from skimage import io import random import numpy as np file_name='D:/Visual Effec

本文实例讲述了Python实现PS滤镜Fish lens图像扭曲效果.分享给大家供大家参考,具体如下: 这里实现 PS 滤镜中的一种几何变换– Fish lens, 对图像做扭曲,感觉就像通过一个凸镜或者凹镜在观察图像一样. import numpy as np from skimage import img_as_float import matplotlib.pyplot as plt from skimage import io import math import numpy.matli

python 实现matlab,基于python实现matlab filter函数过程详解_第7张图片

本文实例讲述了Python实现PS图像明亮度调整效果.分享给大家供大家参考,具体如下: 这里用 Python 实现 PS 图像调整中的明度调整: 我们知道,一般的非线性RGB亮度调整只是在原有R.G.B值基础上增加和减少一定量来实现的,而PS的明度调整原理还得从前面那个公式上去找.我们将正向明度调整公式: RGB = RGB + (255 - RGB) * value / 255 转换为 RGB = (RGB * (255 - value) + 255 * value) / 255, 如果val

python 实现matlab,基于python实现matlab filter函数过程详解_第8张图片

本文实例讲述了Python实现PS图像抽象画风效果的方法.分享给大家供大家参考,具体如下: 今天介绍一种基于图像分割和color map 随机采样生成一种抽象画风的图像特效,简单来说,就是先生成一张 color map 图,颜色是渐变的,然后针对要处理的图像,进行分割,这里用的是 SLIC 分割算法,然后从 color map 中随机采样,将采样得到的像素值赋予分割后的图像区域. # -*- coding: utf-8 -*- """ Created on Sun Aug 2

你可能感兴趣的:(python,实现matlab)