亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? designf.m

?? Sparse Signal Representation using Overlapping Frames (matlab toolbox)
?? M
?? 第 1 頁 / 共 2 頁
字號:
function ErrCode=DesignF(FrameFile,TotIt,MaxDays)% DesignF   Design the frame and store it in FrameFile, based on training data
%           stored in mat-files, DataXnnn.mat, in current directory.
% The function will return after a total of TotIt iterations.
% 
% ErrCode=DesignF(FrameFile,TotIt,MaxDays);%-----------------------------------------------------------------------------------
% arguments:
%  ErrCode   - 0 is returned if the function execute without error
%              1 an 'unexpected' error occurred, lasterr may explain it
%              2 or larger, another error occurred, 
%  FrameFile - the name of the mat-file used to store the frame
%  TotIt     - total number of iterations to do 
%              If more than TotIt iterations already has been done on this frame
%              then no iterations will be done now, the function just return and
%              do not change the frame in FrameFile.
%  MaxDays   - how many days the design process should be allowed to run
%              if MaxDays=0.25 it is 6 hours, 0.01 is 14 minutes and 24 seconds
%-----------------------------------------------------------------------------------

%----------------------------------------------------------------------
% Copyright (c) 2000.  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:  dd.mm.yyyy
% Ver. 1.0  11.12.2000  KS: function made
% Ver. 1.1  04.10.2001  KS: changed how vector selection is used
%   also the new function NormalizeF is used now
% Ver. 1.2  05.11.2001  KS: Overlapping frame for 2D added, (Mdim==2) & (P>1)
% Ver. 1.3  06.11.2001  KS: Separable frame for 2D added
% Ver. 1.4  03.12.2002  KS: moved from ..\Frames to ..\FrameTools%----------------------------------------------------------------------

Mfile='DesignF';
ErrCode=0; 
Display=1;
UpdateFforEachSignal=0;

if (nargin<3)
   disp([Mfile,': wrong number of arguments, see help.']);
   ErrCode=2;
   return
end
StopTime=now+MaxDays;

if ~exist([FrameFile,'.mat'])
   disp([Mfile,': the FrameFile ',FrameFile,'.mat does not exist.']);
   ErrCode=3;
   return
end
try
   % load the following variables from FrameFile: Class, Type, Mdim, F, SizeF
   % G, Ctab, Dtab, Fbest, Savg, Mdat, PreProc, VecSel, InitialF, History, SNRtot
   load(FrameFile);
catch
   disp([Mfile,': the FrameFile ',FrameFile,'.mat could not be read.']);
   ErrCode=3;
   return
end
History0=char(History,[Mfile,': Training of ',FrameFile,' started ',datestr(now,0)]);

% The data-files used for training of the frame should be ok and
% stored in the correct mat-files.
% If not, MakeX may be called at this point
% but for now we assume that it is ok.

% check and display the frame type
if Type=='b'
   disp([Mfile,': ',FrameFile,' is a block oriented frame.']);
elseif Type=='o'
   disp([Mfile,': ',FrameFile,' is an overlapping frame.']);
elseif Type=='g'
   disp([Mfile,': ',FrameFile,' is a general frame.']);
elseif Type=='s'
   disp([Mfile,': ',FrameFile,' is a separable frame.']);
elseif Type=='t'
   disp([Mfile,': ',FrameFile,' is a tree structured filter bank (frame), ',...
         Mfile,' is not ready for this yet.']);
   ErrCode=5;
   return
else
   disp([Mfile,': ',FrameFile,' is type ',Type,' which is not allowed.']);
   ErrCode=5;
   return
end
if (length(VecSel.arg4)==0); VecSel.arg4=0; end;
   
% now do the main iterations
% try
   K=SizeF(Mdim+1);
   N=prod(SizeF(1:Mdim));
   P=prod(SizeF((Mdim+2):(2*Mdim+1)));
   if (Mdim==2) & (P>1) 
      Ic=(prod(2*SizeF((Mdim+2):(2*Mdim+1))-1)+1)/2;  % Ic==P when Mdim==1
      %TotWWT=zeros(K,K,Ic);
      TotWWT=zeros(K*P,K*P);    % larger than what is strictly needed
      TotXWT=zeros(N,K*P);
   else
      Ic=(prod(2*SizeF((Mdim+2):(2*Mdim+1))-1)+1)/2;  % Ic==P when Mdim==1
      TotWWT=zeros(K,K,Ic);
      TotXWT=zeros(N,K,P);
   end
   ItNo=size(SNRtot,2);
   Fnormfact=ones(K,1);
   if ItNo>0
      SNRbest=max(SNRtot(Mdat+1,:));
   else
      SNRbest=0;
   end
   if Display
      disp([Mfile,': Training started ',datestr(now,0),', ',int2str(TotIt-ItNo),' it.']);
      t3=num2str(SNRbest,4);t3=[blanks(8-length(t3)),t3];
      disp(['Best SNR is now ',t3]);
   end
   %
   for i=1:(TotIt-ItNo)
      if (now>StopTime); break; end;
      if ~UpdateFforEachSignal
         if (Mdim==2) & (P>1)
            TotWWT=zeros(K*P,K*P);
            TotXWT=zeros(N,K*P);
         else
            TotWWT=zeros(K,K,Ic);
            TotXWT=zeros(N,K,P);
         end
      end
      ex=0;er=0;      for m=1:Mdat
         if (Mdat>1) | (i==1) | (Type=='s')
            % read the data file
            t1=int2str(m);t1=['0000',t1];t1=t1((length(t1)-2):length(t1));
            DataFile=['DataX',t1]; 
            if ~exist([DataFile,'.mat'])
               disp([Mfile,': the DataFile ',DataFile,'.mat does not exist.']);
               ErrCode=3;
               return
            end
            clear S X W    % make sure that variables are from the DataFile
            load(DataFile);    
            [n,L]=size(X);     % we need the L variable
         end
         disp([Mfile,': use DataFile ',DataFile,'.mat, iteration ',int2str(i),'.']);
         if UpdateFforEachSignal & (i>1)
            TotWWT=TotWWT-WWT;
            TotXWT=TotXWT-XWT;
         end
         % do vector selection
         if Type=='g'
            Fg=BuildFg(F,G);
            Q=size(F,1);
         elseif Type=='s'
            Fv=F{1};
            Fh=F{2};
            Fg=kron(Fh,Fv);
         else
            Fg=F;
         end
         % Fg is now used as the frame, do vector selection
         if strcmp(VecSel.Prog1,'BlockVS')
            disp([Mfile,': vector selection using ',VecSel.Prog1,' is obsolete.']);
            ErrCode=4;
            return
            % koden er i slutten av fila
         elseif strcmp(VecSel.Prog1,'VSblock')
            % first find S (used as third argument in VSblock)
            if (i==1); S=Savg; end;
            % when i>1, S is stored in DataFile (except for 'VSab2' which store W)
            if strcmp(VecSel.arg1,'VSab2') & (i>1)
               W=(Fnormfact(:)*ones(1,L)).*W;   % W was stored instead of S
               S=W;              % and also used as third argument in VSblock
            end
            %if strcmp(VecSel.arg1,'VSab2') & (i==1)
            %   [W,S]=GlobalMP(X,Fg,Savg);    % first time GlobalMP
            %else
            %   disp([Mfile,': do vector selection using ',VecSel.Prog1,'.']);
            %                      VSalg           B          el          Bf
            W=VSblock(X,Fg,S,VecSel.arg1,VecSel.arg2,VecSel.arg3,VecSel.arg4);   
            %end
            S=full(sum(W~=0));
         elseif strcmp(VecSel.Prog1,'VSolap1')
            % first find third argument in VSolap1
            if (i==1)
               W=Savg; 
            else
               W=(Fnormfact*ones(1,L)).*W;   % W was stored instead of S
            end
            %
            W=VSolap1(X,Fg,W,VecSel.arg1,VecSel.arg2);   
            % S=full(sum(W~=0));  % is not used ??
         elseif strcmp(VecSel.Prog1,'VSolap2')
            % first find third argument in VSolap2
            if (i==1)
               W=Savg; 
            else
               W=(Fnormfact*ones(1,L)).*W;   % W was stored instead of S
            end
            %
            W=VSolap2(X,Fg,W,VecSel.arg1,VecSel.arg2);   
            % S=full(sum(W~=0));  % is not used ??
         elseif strcmp(VecSel.Prog1,'GlobalMP')
            disp([Mfile,': vector selection using ',VecSel.Prog1,' is obsolete.']);
            ErrCode=4;
            return
            % [W,S]=GlobalMP(X,Fg,Savg);  
         else
            disp([Mfile,': not ready for vector selection using ',VecSel.Prog1,'.']);
            ErrCode=4;
            return
         end
         % calculate WWT and XWT
         if Type=='s'
            % do not use WWT or XWT, the weights W are stored directly
            WWT=[];XWT=[];
         elseif (P==1)               % for all values of Mdim !!
            WWT=full(W*W');   
            XWT=full(X*W');   
         else 
            if Mdim==1      
               temp=W;
               for p=1:P
                  WWT(:,:,p)=full(W*temp');   
                  XWT(:,:,p)=full(X*temp');   
                  temp=[temp(:,L),temp(:,1:(L-1))];
               end
            elseif (Mdim==2) & (P==4) & (L==4096)
               % WWT (PKxPK) should be Wstar (PKxL) * Wstar' (LxPK)
               % XWT (NxPK) should be X (NxL) * Wstar' (LxPK)    
               % W (KxL) 
               L1=sqrt(L);L2=sqrt(L);  % ==64
               Wstar=sparse(P*K,L);
               for p1=0:1
                  for p2=0:1
                     p=p1+p2*2;
                     Wt=reshape(full(W),K,L1,L2);    % KxL1xL2
                     if p1
                        Wt1=Wt;            
                        Wt(:,1,:)=Wt1(:,L1,:);
                        Wt(:,2:L1,:)=Wt1(:,1:(L1-1),:);
                     end
                     if p2
                        Wt1=Wt;            
                        Wt(:,:,1)=Wt1(:,:,L2);
                        Wt(:,:,2:L2)=Wt1(:,:,1:(L2-1));
                     end
                     Wt=reshape(Wt,K,L);
                     Wstar((1:K)+p*K,:)=sparse(Wt);
                  end
               end
               clear Wt Wt1
               WWT=full(Wstar*Wstar');
               XWT=full(X*Wstar');
               clear Wstar
            else
               disp([Mfile,': overlapping frame and 2D or 3D signal, not ready yet.']);
               ErrCode=4;
               return
            end
         end
         %
         if strcmp(VecSel.arg1,'VSab2') | strcmp(VecSel.Prog1,'VSolap1') ...
               | strcmp(VecSel.Prog1,'VSolap2') | Type=='s'
            %disp([Mfile,': save ',DataFile,', here W is saved.']);
            save(DataFile,'Name','X_DC','X_LP','X','SizeX','ss2','W','WWT','XWT');
         else
            %disp([Mfile,': save ',DataFile,', here S is saved.']);
            save(DataFile,'Name','X_DC','X_LP','X','SizeX','ss2','S','WWT','XWT');
         end
         %
         ex=ex+ss2;    
         if P==1
            R=X-full(Fg*W);
         elseif Mdim==1
            temp=W;R=X;
            for p=1:P
               R=R-full(Fg(:,:,p)*temp);   
               temp=[temp(:,L),temp(:,1:(L-1))];
            end
         elseif (Mdim==2) & (P==4) & (L==4096)
            % this is the special 2D overlapping case handled
            R=X;
            L1=sqrt(L);L2=sqrt(L);  % ==64
            for p1=0:1
               for p2=0:1
                  p=p1+p2*2;
                  Wt=reshape(full(W),K,L1,L2);  % 3D is not fully handled as sparse
                  if p1
                     Wt1=Wt; 
                     Wt(:,1,:)=Wt1(:,L1,:);
                     Wt(:,2:L1,:)=Wt1(:,1:(L1-1),:);
                  end
                  if p2
                     Wt1=Wt; 
                     Wt(:,:,1)=Wt1(:,:,L2);
                     Wt(:,:,2:L2)=Wt1(:,:,1:(L2-1));
                  end
                  Wt=reshape(Wt,K,L);
                  R=R-Fg(:,:,p+1)*Wt;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本不卡视频在线| 欧美在线色视频| 欧美主播一区二区三区| 欧美电影免费观看高清完整版| 中文字幕一区在线| 美脚の诱脚舐め脚责91| 日本韩国视频一区二区| 中文字幕欧美国产| 国产最新精品精品你懂的| 欧美三级三级三级| 亚洲女厕所小便bbb| 国产伦精品一区二区三区免费迷| 欧美日韩国产乱码电影| 亚洲精品日韩专区silk| 99这里只有久久精品视频| 国产亚洲欧洲一区高清在线观看| 日本美女一区二区三区| 欧美视频在线一区二区三区| 一区二区三区在线播放| eeuss鲁片一区二区三区| 日本一区二区动态图| 国产河南妇女毛片精品久久久| 777精品伊人久久久久大香线蕉| 亚洲伦理在线免费看| 99久久精品国产毛片| 18成人在线观看| 不卡的av电影| 亚洲精品福利视频网站| 99视频热这里只有精品免费| 国产精品久久久久久久浪潮网站| 高清视频一区二区| 国产精品三级在线观看| 成人黄色在线网站| 亚洲色图第一区| 欧美中文字幕一区二区三区| 午夜精品一区二区三区三上悠亚| 色婷婷综合久久久中文字幕| 亚洲精品精品亚洲| 欧美无砖砖区免费| 三级欧美在线一区| 精品日韩在线一区| 国产成人精品午夜视频免费| 国产欧美日韩在线| 972aa.com艺术欧美| 一区二区三区四区亚洲| 欧美特级限制片免费在线观看| 婷婷开心激情综合| 久久这里只有精品视频网| 风间由美一区二区av101| 亚洲少妇30p| 717成人午夜免费福利电影| 麻豆国产精品777777在线| 久久久九九九九| 97精品视频在线观看自产线路二| 亚洲国产精品久久人人爱| 日韩欧美aaaaaa| 99re视频精品| 男人的j进女人的j一区| 国产欧美日韩视频在线观看| 91毛片在线观看| 日韩国产高清在线| 国产日韩三级在线| 欧美在线三级电影| 国产自产视频一区二区三区| 国产精品初高中害羞小美女文| 欧美视频一区在线| 福利一区在线观看| 日韩精品视频网站| 国产精品欧美久久久久一区二区| 精品视频一区三区九区| 国产一区二区精品久久91| 亚洲人成在线播放网站岛国| 日韩欧美成人一区| 一本色道久久综合精品竹菊| 美洲天堂一区二卡三卡四卡视频| 国产精品女上位| 欧美一级夜夜爽| 一本色道综合亚洲| 懂色av噜噜一区二区三区av| 天堂影院一区二区| 亚洲色图.com| 国产日韩精品一区二区浪潮av| 欧美色综合网站| 色综合久久中文字幕| 国产一区二区在线观看免费 | 在线欧美日韩国产| 国产很黄免费观看久久| 日本亚洲一区二区| 一区二区三区在线视频播放| 久久久午夜精品理论片中文字幕| 欧美日韩精品一区二区三区蜜桃| 99久久精品免费| 国产精品123区| 久久精品国产精品亚洲精品| 亚洲图片欧美综合| 亚洲天天做日日做天天谢日日欢 | 国产成人综合亚洲网站| 日韩福利视频导航| 天天色 色综合| 夜夜嗨av一区二区三区四季av| 国产精品久久久久婷婷二区次| 久久久天堂av| 久久色.com| 2020日本不卡一区二区视频| 欧美一区二区性放荡片| 欧美日韩中文字幕一区| 欧美日韩国产精选| 欧美久久一二区| 欧美日韩国产成人在线免费| 欧美三级电影在线观看| 欧美日韩夫妻久久| 欧美精品自拍偷拍动漫精品| 欧美日韩国产一二三| 欧美一区二区免费视频| 在线成人av网站| 欧美一级在线观看| xnxx国产精品| 国产欧美精品一区| 亚洲欧美在线观看| 亚洲精品高清视频在线观看| 亚洲激情五月婷婷| 天天色综合天天| 黄色日韩网站视频| 国产激情一区二区三区四区 | 欧美喷水一区二区| 欧美日韩高清一区二区| 日韩午夜精品电影| 国产亚洲一区二区三区在线观看| 中文字幕av一区 二区| 国产精品视频yy9299一区| 一区二区三区四区五区视频在线观看| 亚洲综合色区另类av| 亚洲一二三级电影| 美女爽到高潮91| 不卡电影一区二区三区| 欧美性欧美巨大黑白大战| 91精品中文字幕一区二区三区| 欧美成人aa大片| 欧美激情一区二区三区不卡| 亚洲视频一区二区免费在线观看| 午夜电影一区二区三区| 精一区二区三区| 不卡的av中国片| 911精品国产一区二区在线| 精品对白一区国产伦| 成人欧美一区二区三区| 天天影视色香欲综合网老头| 国产乱码一区二区三区| 色琪琪一区二区三区亚洲区| 欧美一区二区免费视频| 中文字幕在线不卡一区| 日韩影院精彩在线| 成人av在线一区二区| 宅男噜噜噜66一区二区66| 日本一区二区三区免费乱视频 | 欧美少妇bbb| 久久精品人人做人人综合| 一区二区久久久久久| 国产美女一区二区| 欧美日韩免费观看一区三区| 国产日产欧美一区二区视频| 亚洲自拍偷拍网站| 粉嫩蜜臀av国产精品网站| 欧美美女喷水视频| 最新中文字幕一区二区三区| 美女视频黄 久久| 欧美日韩一区不卡| 18欧美亚洲精品| 国产一区二区三区黄视频| 欧美日韩高清影院| 一区二区国产盗摄色噜噜| 国产成人高清在线| 久久综合一区二区| 六月丁香综合在线视频| 在线免费观看日韩欧美| 亚洲欧洲成人av每日更新| 国产麻豆欧美日韩一区| 日韩一级片网站| 三级在线观看一区二区| 在线观看亚洲a| 1000精品久久久久久久久| 国产精品99久久久久久似苏梦涵 | 国产乱码精品一区二区三区av | 激情五月激情综合网| 在线成人av影院| 亚洲一区二区三区中文字幕 | 豆国产96在线|亚洲| 欧美精品一区男女天堂| 久久97超碰色| 日韩美女在线视频| 久88久久88久久久| 日韩视频免费观看高清完整版| 午夜精品爽啪视频| 欧美三级日韩在线| 日韩专区在线视频| 欧美人成免费网站| 视频精品一区二区| 日韩精品一区在线| 毛片不卡一区二区| 亚洲精品在线免费播放|