4000-520-616
欢迎来到免疫在线!(蚂蚁淘生物旗下平台)  请登录 |  免费注册 |  询价篮
主营:原厂直采,平行进口,授权代理(蚂蚁淘为您服务)
咨询热线电话
4000-520-616
当前位置: 首页 > 新闻动态 >
热卖商品
新闻详情
c_synblock.m 源代码在线查看 - Sparse Signal Representation...
来自 : www.eeworm.com/read/216488/150 发布时间:2021-03-25
 function x=C_synblock(y,g1,g2) % C_synblock Synthesis block in a FIR two channel filterbank % % x=C_synblock(y,g1,g2); % ---------------------------------------------- % Arguments: % y - the subbands, odd columns correspond to the upper branch (low pass) % and even columns correspond to the lower branch (high pass) % We should have [N,L]=size(y) and L an even number % x - the resulting signal, two and two columns of y are filtered to % give one column of x, size(x)=[2*N,L/2] % g1 - the FIR filter for the upper branch (low pass) % g2 - the FIR filter for the lower branch (high pass) % ---------------------------------------------- % Note that we assume circular expansion of the sunbands y (and signal x) %---------------------------------------------------------------------- % Copyright (c) 1999. Karl Skretting. All rights reserved. % Hogskolen in Stavanger (Stavanger University), Signal Processing Group % Mail: karl.skretting@tn.his.no Homepage: http://www.ux.his.no/~karlsk/ % % HISTORY: % Ver. 1.0 20.08.1999 KS: Function made % Ver. 1.1 02.12.2002 KS: moved from ..\\Frames to ..\\FrameTools\\ %---------------------------------------------------------------------- Mfile=\'C_synblock\'; Circular=1; % make circular expansion of signal (results) % compensate for system delay Delay=floor((length(g1)+length(g2)-2)/2); if (nargin ~= 3) error([Mfile,\': wrong number of arguments, see help.\']); end [N,L]=size(y); if (mod(L,2)) error([Mfile,\': there are not an even number of subbands, see help.\']); end N1=length(g1); N2=length(g2); % make sure filters have odd length if mod(N1-1,2); g1=[g1(:);0]; N1=N1+1; end; if mod(N2-1,2); g2=[g2(:);0]; N2=N2+1; end; N3=max([N1,N2]); x=zeros(2*N+N3-1,L/2); for l=2:2:L % upper branch u=reshape([zeros(1,N);y(:,l-1)\'],2*N,1); x(1:(2*N+N1-1),l/2)=conv(u,g1); u=reshape([zeros(1,N);y(:,l)\'],2*N,1); x(1:(2*N+N2-1),l/2)=x(1:(2*N+N2-1),l/2)+conv(u,g2); end if Circular first=1:(N3-1); middle=N3:(2*N); last=(2*N+1):(2*N+N3-1); x=[x(first,:)+x(last,:);x(middle,:)]; if Delay first=1:Delay; last=(Delay+1):(2*N); x=[x(last,:);x(first,:)]; end end return; 

本文链接: http://synblock.immuno-online.com/view-770222.html

发布于 : 2021-03-25 阅读(0)
公司介绍
品牌分类
联络我们
服务热线:4000-520-616
(限工作日9:00-18:00)
QQ :1570468124
手机:18915418616
官网:http://