声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 3693|回复: 11

[综合讨论] 关于非均匀采样的频谱matlab程序

[复制链接]
发表于 2007-7-26 16:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
最近研究非均匀采样,但是连基本的基于非均匀采样的离散傅立叶程序都编不好,请大家给我看看,究竟程序错在哪里,我是按照原始的离散傅立叶程序修改的!

[ 本帖最后由 eight 于 2007-7-26 16:37 编辑 ]

Untitled.m

666 Bytes, 下载次数: 17

回复
分享到:

使用道具 举报

发表于 2007-7-26 16:39 | 显示全部楼层
原帖由 brightfay 于 2007-7-26 16:27 发表
最近研究非均匀采样,但是连基本的基于非均匀采样的离散傅立叶程序都编不好,请大家给我看看,究竟程序错在哪里,我是按照原始的离散傅立叶程序修改的!


 直接贴出来还好些:
clc
clear
close all
f0=200;
f1=700;
f2=1100;
%----------------------------------------非均匀采样
for n=2:1024;
    t(1)=1;
  
      t(n)=n+randn;%非均匀采样时间函数
      h(n)=t(n)-t(n-1);%时间间隔
       y1(1)=0.1*sin(2*pi*f0*t(1))+sin(2*pi*f1*t(1))+sin(2*pi*f2*t(1));
   
        y1(n)=0.1*sin(2*pi*f0*t(n))+sin(2*pi*f1*t(n))+sin(2*pi*f2*t(n));
end
%------------------DFT变换
M=length(y1);
i1=t;%和均匀有区别
m1=i1;
WN1=exp(-j*2*pi/M);                                                                                                         
nk1=i1'*m1;
WNnk1=WN1.^nk1;
xk1=y1*WNnk1;
xk2=xk1.*h;%和均匀有区别
plot(abs(xk2)/max(abs(xk2)))

评分

1

查看全部评分

 楼主| 发表于 2007-7-26 16:49 | 显示全部楼层

回复 #1 brightfay 的帖子

t(1)=1;
t(n)=n+randn;
是我设置的非均匀采样;
非均匀采样的傅立叶变换:X(f)=x(t(n))exp(-j*2*pi*f*t(n))*(t(n)-t(n-1));
n从0到N-1;
究竟哪里不对,大家快帮帮我啊,研究好几天了,一点思路都没有了
发表于 2007-7-26 17:22 | 显示全部楼层
采样有问题吧,得到序列是个随机相位序列。

评分

1

查看全部评分

 楼主| 发表于 2007-7-26 19:11 | 显示全部楼层
采样是随机的,所以才是非均匀采样阿!
发表于 2007-7-26 19:27 | 显示全部楼层
t(n)=n+randn;%非均匀采样时间函数


这个东西不太熟悉,就个人理解非均匀采样应该就是指采样时间间隔是变化的吧。

t0 t1 t2 t3 ......  这些时刻之间的间隔是不一致的,但至少应该...>t3>t2>t1>t0吧

而你的时间都不是单调增加的。

评分

1

查看全部评分

发表于 2007-7-27 09:06 | 显示全部楼层

回复 #5 brightfay 的帖子

非均匀采样和随机相位是有区别的,就像楼上说的一样。问题应该是出在采样上的,建议查看资料,把采样先弄对,不然后边的工作就没法进行

[ 本帖最后由 eight 于 2007-8-10 13:20 编辑 ]
 楼主| 发表于 2007-7-27 10:28 | 显示全部楼层

回复 #7 花如月 的帖子

谢谢两位的帮助,我再看一下
发表于 2011-5-11 11:18 | 显示全部楼层
本帖最后由 guodongliang 于 2011-5-11 11:51 编辑

回复 8 # brightfay 的帖子

采样部分有问题,因为plot(y1)看到的波形不对,你设置的频率分量为200-1100,而采样间隔是1,显然不够密,应参照均匀采样的采样定理采集,满足局部采样条件;

其次,程序中不仅是原始DFT最后点乘以采样时间间隔h向量;基函数的指数项还有个改动,即
i1=t; %和均匀有区别,
m1=i1;
但是,时域非均匀,频域均匀的话,i1和m1应该有一个保持均匀,指数项i1和m1至少一个应为0:1:M-1,这里有问题。

还有一个问题,时间间隔向量 h 的长度比时间 t 向量长度减少1(可以用 h=diff(t)),程序仿真发现h(1)是0,这个怎么解释?

发表于 2011-5-13 12:25 | 显示全部楼层
本帖最后由 guodongliang 于 2011-5-13 13:18 编辑

从h(2)开始赋值,默认h(1)=0,使得序列点乘这一步等长。这一步没问题。
还有一个办法是舍弃信号一个点
发表于 2013-5-7 17:33 | 显示全部楼层
最近也要学这个了,感谢分享。
发表于 2013-10-14 10:07 | 显示全部楼层
非均匀采样是不是一定要加上伪随机序列?分段函数不是也可以有效的解决?我的理解是,均匀采样是相对的,而非均匀采样是绝对的,因此,要注重非均匀采样的方法
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-12-30 03:39 , Processed in 0.080445 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表