greenbug 发表于 2006-9-8 20:39

有没有大侠用matlab实现过高斯滤波?

有没有哪位大侠使用过matlab实现高斯滤波器滤波,我急需这方面的资料,我现在没有一点头绪

songzy41 发表于 2006-9-8 21:03

在MATLAB中有firgauss函数,用help看一下可了解其功能。

greenbug 发表于 2006-9-8 21:07

好的,我看一下,谢谢

greenbug 发表于 2006-9-8 21:46

firgauss函数好像 返回的是一个高斯序列,而不是一个滤波器,我想要的是一个高斯滤波器,能够在matlab里实现一维滤波用的函数

songzy41 发表于 2006-9-9 20:15

原帖由 greenbug 于 2006-9-8 21:46 发表
firgauss函数好像 返回的是一个高斯序列,而不是一个滤波器,我想要的是一个高斯滤波器,能够在matlab里实现一维滤波用的函数
对,求出的滤波系数也是一个高斯序列,如果用
b=firgauss(k,n);
freqz(b,1);
可看到该组系数得到的是一个低通滤波器。它能对数据进行低通滤波。

[ 本帖最后由 songzy41 于 2006-9-9 20:17 编辑 ]

greenbug 发表于 2006-9-9 20:25

谢谢,我已经看到您的电子邮件了,真心感谢您的热心帮助

chuangyee 发表于 2007-8-15 10:24

我也需要高斯滤波

希望高手给我指点一下,我要处理的信号是一个一维数组,对信号进行高斯滤波,不知道该怎么进行?
恳请指点!

HolySaint 发表于 2007-8-15 15:48

http://forum.vibunion.com/forum/viewthread.php?tid=49432

试试这个

songzy41 发表于 2007-8-16 09:26

本帖最后由 wdhd 于 2016-9-9 13:36 编辑

原帖由 chuangyee 于 2007-8-15 10:24 发表
希望高手给我指点一下,我要处理的信号是一个一维数组,对信号进行高斯滤波,不知道该怎么进行?
恳请指点!
1,从firgauss可得滤波器系数b;
2,用filter或conv对信号进行滤波。

tjqscsio 发表于 2008-4-1 09:38

回复 9楼 的帖子

Songzy41,你好!
我正面临与7楼一样的问题,因为是彻底的门外汉,以前从来没有接触过,因此无从下口。按照你的意见,我也看了matlab相关命令,但firgauss命令中K,N参数的含义和确定标准还不明白。同时,filter对一维数组进行高斯滤波时,其参数B,A表示滤波器,但由firgauss得到的只是一个滤波系数b(或者可以说是一个滤波器),不知道A和B又分别表示什么意思呢?:@)

songzy41 发表于 2008-4-1 14:22

本帖最后由 wdhd 于 2016-9-9 13:36 编辑

原帖由 tjqscsio 于 2008-4-1 09:38 发表
Songzy41,你好!
我正面临与7楼一样的问题,因为是彻底的门外汉,以前从来没有接触过,因此无从下口。按照你的意见,我也看了matlab相关命令,但firgauss命令中K,N参数的含义和确定标准还不明白。同时,filter对一维数组进行高斯滤波时,其参数B,A表示滤波器,但由firgauss得到的只是一个滤波系数b(或者可以说是一个滤波器),不知道A和B又分别表示什么意思呢?
数字滤波器的Z变换为下式:
                                             -1                     -m
                B(z)    b(1) + b(2)z + .... + b(m+1)z
      H(z) = ---- = ---------------------------------------
                                             -1                     -n
                A(z)    a(1) + a(2)z + .... + a(n+1)z

所以B是Z变换的分子系数,A是Z变换的分母系数。当为FIR滤波器时,除a(1)=1,a(2)=...=a(n)=0,此时调用filter时可写为:
filter(b,1,x)

tjqscsio 发表于 2008-4-1 14:52

非常感谢songzy41的解释,A、B系数含义的问题已经明白。:@)
页: [1]
查看完整版本: 有没有大侠用matlab实现过高斯滤波?