亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
欧美日韩精品一区二区三区| 麻豆精品精品国产自在97香蕉| 91麻豆精品91久久久久同性| 不卡视频一二三| 成人午夜视频在线观看| 国产精品资源站在线| 国产一区二区毛片| 国产精品2024| 99免费精品在线观看| 97se亚洲国产综合自在线观| 91亚洲永久精品| 91免费国产视频网站| 色天使久久综合网天天| 欧美日韩视频一区二区| 日韩三级免费观看| 久久只精品国产| 国产精品福利一区二区三区| 亚洲日本在线看| 亚洲国产精品自拍| 久久国产精品一区二区| 懂色av一区二区在线播放| 波多野结衣中文一区| 91美女片黄在线| 91精品国产91热久久久做人人| 欧美成人a在线| 中文字幕字幕中文在线中不卡视频| 亚洲视频网在线直播| 午夜精品爽啪视频| 国产乱子伦视频一区二区三区| 成人aa视频在线观看| 欧美日韩国产片| 久久久www成人免费无遮挡大片| 中文字幕中文在线不卡住| 亚洲国产成人高清精品| 国产一区二区中文字幕| 欧洲色大大久久| 久久久久99精品一区| 亚洲一区二区av在线| 精品一区二区日韩| 日本韩国欧美一区二区三区| 精品国产3级a| 亚洲.国产.中文慕字在线| 国产激情一区二区三区四区 | 欧美日韩中文字幕一区二区| 欧美一卡二卡三卡| 亚洲乱码国产乱码精品精的特点| 日本视频免费一区| 色婷婷综合久色| 中文字幕免费不卡在线| 蜜臀av性久久久久蜜臀av麻豆| 欧美无人高清视频在线观看| 久久综合网色—综合色88| 亚洲成a天堂v人片| 99在线视频精品| 久久久久久影视| 日本免费新一区视频| 在线一区二区视频| 亚洲视频在线一区二区| 粉嫩13p一区二区三区| 日韩一区二区三区精品视频| 一区二区三区精品久久久| 99久久综合国产精品| 国产三级三级三级精品8ⅰ区| 奇米亚洲午夜久久精品| 欧美性猛片aaaaaaa做受| 成人免费在线观看入口| 国产白丝精品91爽爽久久| 久久青草欧美一区二区三区| 久久99精品久久只有精品| 91麻豆精品国产无毒不卡在线观看 | 久久影视一区二区| 麻豆国产欧美日韩综合精品二区| 在线观看亚洲精品| 亚洲一区免费视频| 色婷婷久久久久swag精品| 亚洲婷婷国产精品电影人久久| 福利一区二区在线观看| 国产无人区一区二区三区| 精品午夜久久福利影院| 欧美精品一区二区三区四区 | 欧美精品v国产精品v日韩精品 | 日韩一区二区在线观看视频| 亚洲国产人成综合网站| 欧美精品在线视频| 国产剧情一区在线| 久久欧美中文字幕| 国产成人免费在线视频| 国产精品免费av| 91久久人澡人人添人人爽欧美| 一个色在线综合| 91精品国产91久久综合桃花 | 久久香蕉国产线看观看99| 国产在线精品国自产拍免费| 久久久亚洲午夜电影| 波多野结衣欧美| 亚洲电影你懂得| 精品日韩成人av| 成人免费看的视频| 亚洲一区二区三区免费视频| 日韩一级片网站| 成人小视频在线观看| 亚洲亚洲精品在线观看| 日韩三级视频在线看| gogo大胆日本视频一区| 五月婷婷久久丁香| 久久精品亚洲精品国产欧美kt∨| 91网站在线播放| 久久se精品一区精品二区| 国产精品天干天干在观线| 欧美日本韩国一区二区三区视频| 国产精品一品视频| 天天亚洲美女在线视频| 欧美激情一区二区三区四区| 欧美日韩一卡二卡| 国产成人午夜精品影院观看视频| 亚洲人123区| 日韩午夜精品电影| 日本精品一级二级| 国产精品一区二区在线播放 | 午夜精彩视频在线观看不卡| 精品国产亚洲一区二区三区在线观看| 成人精品视频一区二区三区尤物| 午夜激情久久久| 国产精品久久久久久久久图文区 | 欧美日韩免费一区二区三区| 国产麻豆欧美日韩一区| 日韩在线一二三区| 亚洲你懂的在线视频| 精品va天堂亚洲国产| 欧美图区在线视频| www.久久精品| 国产91精品精华液一区二区三区| 午夜不卡av免费| 亚洲国产中文字幕在线视频综合 | 亚洲精品一二三四区| 国产日韩精品一区| 亚洲精品一区二区精华| 91精品国产综合久久精品app| 波多野结衣在线一区| 成人一二三区视频| 国产成人免费视频精品含羞草妖精| 午夜电影一区二区| 亚洲综合图片区| 亚洲一区二区黄色| 亚洲一区二区欧美| 亚洲国产欧美一区二区三区丁香婷| 国产精品国产自产拍高清av| 久久精品网站免费观看| 久久综合九色欧美综合狠狠| 欧美成人r级一区二区三区| 欧美一级高清大全免费观看| 6080国产精品一区二区| 制服丝袜亚洲网站| 欧美一级二级三级蜜桃| 欧美一级片在线看| 欧美一二三区精品| 欧美成人猛片aaaaaaa| 欧美电影免费观看高清完整版在线观看 | 欧美一级片在线观看| 日韩欧美中文一区| 久久久精品免费网站| 欧美激情一区不卡| 亚洲精品中文字幕乱码三区 | 日韩一区二区免费在线观看| 欧美巨大另类极品videosbest | 亚洲欧洲色图综合| 1024亚洲合集| 亚洲国产精品一区二区尤物区| 亚洲一区二区三区三| 麻豆91在线观看| 国产91在线|亚洲| 在线看不卡av| 欧美一级黄色录像| 国产午夜精品一区二区三区视频| 日韩一区日韩二区| 亚洲一区二区精品视频| 久久97超碰色| 99久精品国产| 欧美二区在线观看| 国产日韩精品一区二区三区在线| 亚洲日本乱码在线观看| 丝袜国产日韩另类美女| 国产中文字幕一区| 久久久精品tv| 婷婷中文字幕综合| 欧美日韩国产一区二区三区地区| 国产一区二区不卡老阿姨| 成人毛片在线观看| 欧美男生操女生| 日本一区二区视频在线| 亚洲一区在线观看网站| 青青草原综合久久大伊人精品 | 亚洲国产一区二区三区| 久草在线在线精品观看| 91浏览器打开| 欧美大片免费久久精品三p| 依依成人精品视频| 国产精品18久久久久久久久 | 亚洲一级二级在线| 国产高清精品网站|