⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ridgechoose.m

📁 JLAB is a set of Matlab functions I have written or co-written over the past fifteen years for the p
💻 M
字号:
function[varargout]=ridgechoose(varargin)% RIDGECHOOSE  Extracts the largest-amplitude ridge at a given time.%%   [IS,JS,WS]=RIDGECHOOSE(IR,JR,WR) where IR and JR contains indices %   into row and column locations, respectively, of ridges along which %   transfrom values WR are observed, chooses only that subset of ridges%   exhibiting the with largest absolute value of WR at a given time.  %   __________________________________________________________________%%   Additional output %%   [WM,WM1,WM2,..., WMN]=RIDGECHOOSE(X,IR,WR,WR1,WR2,..., WRN) also maps%   values of the ridge properties WR1, WR2,... WRN into column vectors %   of the same length as X, always using WR to select among multiple%   ridges present at the same time.%   __________________________________________________________________%%   Multi-component datasets% %   RIDGECHOOSE also works when SIZE(W,3)>1, that is, when X contains say%   K different dataset components.  In this case the input format is%   [IS,JS,KS,WS,...]=RIDGECHOOSE(IR,JR,KR,WR,... ).%   __________________________________________________________________%%   See also RIDGEWALK, RIDGEINTERP.%%   Usage:  wm=ridgechoose(x,ir,wr);%           [wm,wm1,wm2]=ridgechoose(x,ir,wr,wr1,wr2);%   _________________________________________________________________%   This is part of JLAB --- type 'help jlab' for more information%   (C) 2006 J.M. Lilly --- type 'help jlab_license' for details        ir=varargin{1};jr=varargin{2};if ~isreal(allall(nonnan(i3)))    kr=1+0*ir;    wr=varargin{3};    na=3;else    kr=varargin{3};    wr=varargin{4};    na=4;endfor k=1:size(ir,3)    indexk=find(kr(1,:)==k);    if ~isempty(indexk)        irk=ir(:,indexk);        jrk=jr(:,indexk);        wrk=wr(:,indexk);        index_islargest=find(islargest(irk(:),krk(:),wrk(:)));        bool=zeros(size(irk));        if ~isempty(index_islargest)            bool(index_islargest)=1;        end               %/********************************irm=nan*zeros(length(z),1);krm=nan*zeros(length(z),1);wrm=nan*zeros(size(z));indexr=sub2ind(size(z),ir,kr);irm(ir)=ir;krm(ir)=kr;wrm(indexr)=wr;varargout{1}=wrm;for i=na+1:nargin   wi=varargin{i};  vcolon(wi);  %vindex(wi,nani,1);  vindex(wi,index_islargest,1);  wim=nan*zeros(size(z));   wim(indexr)=wi;    varargout{i-na+1}=wim;end%\********************************

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -