资源简介
复信号分离代码,分离成功率非常高,可用于工程,仅供参考,希望提供帮助
代码片段和文件信息
function [y] = fastICA_Complex_lly_jw(xds)
M = size(x1); % Number of antenna 返回矩阵行数
if (exist(‘ds‘‘var‘)~=1)||isempty(ds)
ds = M; % Number of Sources
end
SigLen = size(x2); % Signal length 返回x矩阵列数
% % centering
% x = x-repmat(mean(x2)1SigLen);
% whitening
Rx = x*x‘./SigLen;
[uxdx] = eig(Rx);%求Rx的特征值,并构成特征对角矩阵
% White_x = ux*inv(sqrt(dx))*ux‘*x;
if ~isempty(find(inv(sqrt(dx))==Inf 1))%sqrt 平方根 inv 求逆矩阵 find 返回第一个非零元素1的索引值
y=x;
return;
end
WF = inv(sqrt(dx))*ux‘;
White_x = WF*x;
% sig = [];
% for ii = 1:M
% sig = [sig;real(White_x(ii:));imag(White_x(ii:))];
% end
sig = reshape([shiftdim(real(White_x)-1);shiftdim(imag(White_x)-1)]...
2*MSigLen);%shiftdim(A1)使A的维号左移1位
% initialize the diagonal filters
% for ii=1:2*M
% W(iiii) = 1;
% end
W = eye(2*ds2*M);%返回对角线矩阵
NumIter = 200;
convergence = zeros(1NumIter);%0矩阵
count = 1;
% while abs(convergence-0)>1e-4
while count<=NumIter
Wk = W;
y = Wk*sig;
W = ((y.^3)*sig‘)./SigLen - diag(sum(3*(y.
- 上一篇:数电课设篮球计分器mutisim文件广工
- 下一篇:图像的高通滤波程序代码
相关资源
- 流形学习算法(matlab)
- matlab 分别用sobel prewitt roberts laplacia
- 文献和程序,光伏发电PV,MATLAB程序
- matlab图像分解四叉树分解显示
- 基于Matlab的二阶系统的模糊自适应P
- boost DC-DC变换器matlab仿真模型
- 基于MATLABGUI的语音信号特征提取系统
- matlab图像锐化源代码
- matlab迭代法自动阈值分割算法
- Matlab仿真_高勇.caj
- DBF的matlab仿真程序
- 生成地质体三维建模理论模型MATLAB
- 求取两个向量间欧氏距离MATLAB程序
- MATLAB实现股票价格预测 源程序代码
- 数字图像处理作业冈萨雷斯版源码M
- 用Matlab实现图像栅格化
- hough 检测直线、圆形matlab代码
- MATLAB计算长除法源码
- 基于神经网络的手写数字识别MATLAB源
- matlab实现伽罗华域上常系数乘法器
- 用MATLAB实现电磁波与目标作用的动态
- 基于MATLAB求解最短路问题
- MATLAB指纹识别代码可直接用
- 风机风轮模型
- 雷达系统仿真代码
- LPP局部保持投影MATLAB源代码
- 用MATLAB程序实现的语音基本谱减法
- 边界提取,边界连接,Matlab
- Matlab实现算术编码arithmetic coding,输入
- dijkstra算法代码
评论
共有 条评论