华电机械 发表于 2013-9-28 17:21

fastica这个程序怎么调用阿,比如要分离出信号x中的噪声n,怎么调用fastica,,这样吗,,=fastica(x,n)

yghit08 发表于 2013-9-28 20:32

华电机械 发表于 2013-9-28 17:21 static/image/common/back.gif
fastica这个程序怎么调用阿,比如要分离出信号x中的噪声n,怎么调用fastica,,这样吗,,=fastica ...

这让我怎么回答??
这你看程序的说明就知道了。
话说先是做白化(球化),然后是这一步。
貌似n不需要输入。主要要输入的选择数据矩阵和选择什么类型的非线性偶函数之类的。
输出的话,应该有混合矩阵、源信号矩阵(注意是和混合矩阵位置上是一一对应的)、再有就是评价分离指标之类的参数了

华电机械 发表于 2013-9-29 20:55

我使用fastica分离仿真信号
x=0.3*cos(90*pi*t+0.5*sin(30*pi*t))+0.2*sin(240*pi*t);%源信号
s=randn(1,N);%噪声
x1=x+s;%观测信号
%引入虚拟的观测信号
y=;
=fastica(y)
figure
plot(t,y1);
画出来的图源信号和噪声在一起,怎样分开画出来啊

yghit08 发表于 2013-9-29 22:16

华电机械 发表于 2013-9-29 20:55 static/image/common/back.gif
我使用fastica分离仿真信号
x=0.3*cos(90*pi*t+0.5*sin(30*pi*t))+0.2*sin(240*pi*t);%源信号
s=randn(1, ...

再看看盲信号分离的书吧!
这没法回了。
你混合矩阵呢?

华电机械 发表于 2013-9-30 09:06

yghit08 发表于 2013-9-29 22:16 static/image/common/back.gif
再看看盲信号分离的书吧!
这没法回了。
你混合矩阵呢?

那把混合矩阵分开,怎么整?

yghit08 发表于 2013-9-30 10:36

华电机械 发表于 2013-9-30 09:06 static/image/common/back.gif
那把混合矩阵分开,怎么整?

你还是看看书吧!
你的过程就不太对。
你的混合矩阵是.我没记错的话这样的混合矩阵不太合适。第二个观测信号没有源信号,而在这里噪声信号被当成一路源信号,而非干扰信号。
另外你的源信号x中其实是有两中成分的信号,利用ICA分析我想是不会处理成一个源信号的。
你倒不如这样做:
x1=x+s;
x2=x_1-x_2+s;
其中,x_1对应x中第一个成分,x_2对应第二个。
看看书!

华电机械 发表于 2013-9-30 16:46

yghit08 发表于 2013-9-30 10:36 static/image/common/back.gif
你还是看看书吧!
你的过程就不太对。
你的混合矩阵是.我没记错的话这样的混合矩阵不太合适。 ...

y1里含有两个成分,包含y1(1,:)和y1(2,:),具体哪个是源信号这里好像不能确定。楼主有将fastica和emd或lmd联合使用吗????

yghit08 发表于 2013-9-30 17:05

本帖最后由 yghit08 于 2013-9-30 17:17 编辑

华电机械 发表于 2013-9-30 16:46 static/image/common/back.gif
y1里含有两个成分,包含y1(1,:)和y1(2,:),具体哪个是源信号这里好像不能确定。楼主有将fastica和 ...
为什么要联合使用?有什么意义?这是你需要考虑的。
看顾这方面的文章,混合起来用:先用EMD做,相当于粗分,然后利用分离出来的IMFs作为混合信号,利用ICA方法进行细分。
我知道y1里面含有两个信号,源信号(因为这是正定盲源分离问题,所以你的观测信号是两个,那么对应分解出来的源信号也是两个。你尝试着用我上面给你的仿真信号的形式做做看吗?你错误的做法还需要我给出合理的解释么?这不是存心难为人么!也先试试无噪声情况下,有噪声的情况也使得噪声水平低点,太高了很多方法不好使。再说你还用错了!)。但是不是没分离开么?源信号不能确定,那么你为什么做这个内容呢!
在你的仿真里面,我认为的源信号是cos(90*pi*t+0.5*sin(30*pi*t))和sin(240*pi*t)。仿真信号还是非常好确定源信号的,从波形上几乎就能看出来。也就是说你自己都不清楚为什么要引用盲源分离的目的,过程就更不用谈了。不知道你认为的源信号是什么!
既然你问到这个问题,那么我只能遗憾的说你压根就没怎么看盲源分离的书或者文章。一上来就赶紧找程序试用,出问题了就想着找人问问,好用就满心欢喜,但是大部分情况是不好用,不看任何基础文件的话。至少也看点吧!!!!

华电机械 发表于 2013-9-30 17:44

yghit08 发表于 2013-9-30 17:05 static/image/common/back.gif
为什么要联合使用?有什么意义?这是你需要考虑的。
看顾这方面的文章,混合起来用:先用EMD做,相当于粗 ...

你说的对,我再看看吧

yueyaquan 发表于 2013-11-21 09:09

本帖最后由 yueyaquan 于 2013-11-21 09:34 编辑

盲源信号分离用于分析的信号,是多个传感器放在一个构建的不同位子,如同放一根梁上;还是多个传感器可以放不同结构的不同位子,如有的放板上有的放梁上?还有怎么确定采集到的信号是多个信号源的线性叠加还是卷积叠加?

yghit08 发表于 2013-11-21 09:34

yueyaquan 发表于 2013-11-21 09:09 static/image/common/back.gif
盲源信号分离用于分析的信号,是多个传感器放在一个构建的不同位子,如同放一根梁上;还是多个传感器可以放 ...

这貌似不是个问题,因为盲源分离并没有限定怎么使用,最重要的是需要被分离的源信号是否有和其他源信号不同的特征量,即可分离的前提。针对你的问题,我想主要还是看问题的背景吧:目标是什么。方法是次要的,解决问题的方法是主要的。如果是用于提取模态参数的话,我想还是多个传感器布置在一个结构的不同位置。目前在建筑方面的模态参数辨识的文章中见到过所谓的局部模态:因为构件太大,传感器数量不够,分多次实验完成一个实验目的,获得完整的模态信息(主要是振型)。

yueyaquan 发表于 2013-11-21 09:52

本帖最后由 yueyaquan 于 2013-11-21 10:05 编辑

yghit08 发表于 2013-11-21 09:34 http://forum.chinavib.com/static/image/common/back.gif
这貌似不是个问题,因为盲源分离并没有限定怎么使用,最重要的是需要被分离的源信号是否有和其他源信号不 ...

之前发过广播的帖子,现在具体说下吧。我的是在火车站高架站厅采集的工况数据,传感器是按区放置的,有的放板上有的放梁上(梁又有不同跨度),共有16个通道,前8个通道是加速度,后8个通道是速度。主要是分析人群荷载引起的结构响应,但是在采集过程中会有广播、垃圾车经过、始发和过路的列车干扰,甚至可能还有火车站里风机设备的影响。现在我要做的是把人引起的结构响应分离出来进行舒适度的评价。一个通道采集的数据长度有180000,采样频率是100hz,D:\wm\二区第一组测点一幅频图和功率谱图\未降噪的总长功率谱图.jpg
这是我对原始数据求得功率谱
file:///C:/Documents%20and%20Settings/Administrator/Application%20Data/Tencent/Users/840079601/QQ/WinTemp/RichOle/(P29OJ1TVHTQ~%7BFNEZQTT3U.jpg

yghit08 发表于 2013-11-21 11:06

yueyaquan 发表于 2013-11-21 09:52 static/image/common/back.gif
之前发过广播的帖子,现在具体说下吧。我的是在火车站高架站厅采集的工况数据,传感器是按区放置的,有 ...

你这么一说我感觉困难性比较大,考虑的因素过多,而盲源分离的能力有限,或者说是单纯从频率特征上可能很难将这些内容分离开来(不可避免的会存在频率重合等问题),可以考虑基于稀疏成分分析的盲源分离算法。从这里看,传感器的布置是对的,或者仅仅关心某一部件在这些载荷影响下的响应(传感器布置在一个件上)。另:是否考虑可以换测试环境?

yueyaquan 发表于 2013-11-21 16:31

yghit08 发表于 2013-11-21 11:06 static/image/common/back.gif
你这么一说我感觉困难性比较大,考虑的因素过多,而盲源分离的能力有限,或者说是单纯从频率特征上可能很 ...

这个数据是两年前测的,一直没有师兄师姐愿意做,并且老师也没有重新测的意思。所以我只能硬着头皮做,最麻烦的是即使选择一种方法处理了,那么该怎么评价我处理结果的好坏。在此真的很感谢您的耐心

yugang2010 发表于 2014-5-6 11:59

yghit08 发表于 2013-11-21 11:06
你这么一说我感觉困难性比较大,考虑的因素过多,而盲源分离的能力有限,或者说是单纯从频率特征上可能很 ...

看到于老师多次提起稀疏分量分析,我想借贵地一用,说一下自己关于稀疏分量分析(sparse component analysis,SCA)的一点理解。如有不对,请多指责。
    SCA方法是pau bofill在2001年一篇论文里有过详细介绍,他的老师M Zibulevsky教授在1999年的一篇文献里提出了关于SCA的框架和思路(直接Google学术里搜索作者名字即可搜到文章)。SCA主要分为两步,第一步是估计混合矩阵(Matrix Estimating,ME),第二步是源恢复(source recovery,SR)。关于ME的文献较多,2009年,VG REJU的文章提出了一种利用单源点的思想,同时对前面多篇文献做了比较好的综述。关于SR,用的比较多的就是L1范数最小化方法了(二维情况下,称作最短路径法)。常用的稀疏方法有短时傅里叶,小波变换,S变换,比较重要的一点是,所采用的稀疏方法必须有逆变换。否则,在稀疏域中恢复出了信号,但是无法得到时域信号。
   SCA是欠定盲源分离中比较经典的一种方法,可分离任意数量的源信号。传统的盲源分离(如ICA,jade等)方法,有个假设,就是传感器数目大于源数目。而实际测试中,多数情况下振源数目是无法确定的,这也导致了正定盲分离在振动信号分析中受到很多的限制。所以,SCA方法在理论上具有很大的诱惑力。
    但是SCA方法的使用需要一个前提,必须是瞬时混合模型,即各源信号在观测信号中的延迟为0。如果各源信号间存在延迟,则在第一步ME中的散点图,会形成椭圆形状(即,李萨如图形)。导致无法估计出混合矩阵各方向向量。而延迟是普遍存在于振动信号测量中的,即不同传感器之间肯定是有延迟的。但是,如果测试结构刚度较大,同时传感器距离不要过远,延迟可以在一定程度上被忽略掉。在振动信号处理领域中,本人一共搜索到5篇文献(于老师的文章用的另一种方法,TFROIM),两篇英文关于模态识别的,两篇中文的(从bofill文章的被‘引用’中可以搜到)。其中关于模态识别的那3篇还是比较靠谱的。而中文的那两篇感觉数据有些假。
    关于SCA方法,并没有确定的算法,仅仅是一个思路框架。每一步都可以采用不同的方法,如不同的稀疏方法,不同的混合矩阵估计方法,源恢复算法较为固定,即L1最小化方法。
SCA方法虽然看起来很美,但是用起来并不是很方便。如实测信号中的背景噪声导致无法准确的估计混合矩阵;在源恢复时,不同信号间具有相同的方向向量则会被当作同一个源分离出来;信号间延迟问题,等等。
    欠定盲源分离方法在振动信号处理中的应用,从理论上来说应该更加广泛一些,但是,即使在语音信号处理中依然处在理论仿真阶段,更何况用在实测振动信号中。很多情况下,会出现水土不服的状况。参与的人很少,有成果的更少,那些喜欢突破下自己的同学可以深入一下,不过还是谨慎一些的好。
    本人试验了多个盲分离算法,很多是直接从语音信号处理方法中移植过来的,但是结果并不是很理想,个人认为如果想将盲分离方法恰当地用在振动信号处理中,还有比较长的一段路要走。有兴趣的同学可以参考李舜酩教授的《振动信号的盲源分离技术及应用》。这本书个人觉得是在实验的基础上对振动信号源分离问题进行了一定的探索,从里面很多例子看出,振源信号并未得到有效分离。
qq:694722435.
页: 1 2 [3] 4
查看完整版本: 盲信号分离应用于模态参数提取