Wavelab850 installation【MATLAB】

安装教程
下载地址

我遇到的问题

安装

  1. 按照错误提示,重新设置了目标路径:

WAVELABPATH =
‘E:\MATLAB\R2018\toolbox\Wavelab850’

具体错误原因可以打开对应的.m文件查看

  1. c文件编译成功后,显示:
系统找不到指定的文件

【解决方式】
打开InstallMEX.m,修改语句,

% eval(sprintf('cd ''%sMEXSource''', WAVELABPATH));
cd('E:/software/Matlab/toolbox/WAVELAB850/MEXSource');

我的电脑是PC,

  elseif isPC,
    dos('move CPAnalysis.dll ..\Packets\One-D');

按照脚本中的描述,应当移动CPAnalysis.dll到指定文件夹。
我在Wavelab850文件夹搜索发现,MEXSource中的CPAnalysis文件后缀是.mexw64

于是替换了脚本中的后缀,再运行就可以批量移动了。

InstallMEX.m

function InstallMEX

global WAVELABPATH

MEX_OK = 1;

% Check if all the MEX files are installed
for file={'CPAnalysis' 'WPAnalysis' 'FWT_PO' 'FWT2_PO' 'IWT_PO' ...
      'IWT2_PO' 'UpDyadHi' 'UpDyadLo' 'DownDyadHi' 'DownDyadLo' 'dct_iv' ...
      'FCPSynthesis' 'FWPSynthesis' ...
      'dct_ii' 'dst_ii' 'dct_iii' 'dst_iii' ...
      'FWT_PBS' 'IWT_PBS' ...
      'FWT_TI' 'IWT_TI' ...
      'FMIPT' 'IMIPT' ...
      'FAIPT' 'IAIPT' 'LMIRefineSeq' 'MedRefineSeq'}
  
  file = char(file);
  if exist(file)~=3,
    MEX_OK = 0;
    break;
  end
end

% If not, install...
if ~MEX_OK,
  disp('WaveLab detects that some or all of your MEX files are not installed,')
  R=input('do you want to install them now? [[Yes]/No] \n','s');
if strcmp(R,'') + strcmp(R,'Yes') | strcmp(R,'yes') | strcmp(R,'y') | strcmp(R,'Y') | strcmp(R,'YES'), 
  disp('INSTALLING MEX FILES, MAY TAKE A WHILE ...')
  disp(' ')
  disp('WaveLab assumes that your mex compiler is properly installed.')
  disp('In particular, you should be able to call mex.m within matlab')
  disp('to compile a mex file.')
  disp('Consult your system administrator if not.')
  disp(' ')      
  FIRST_COMPILE = 0;
  cd('E:/MATLAB/R2018/toolbox/Wavelab850/MEXSource');
 % eval(sprintf('cd ''%sMEXSource''', WAVELABPATH));
  
  for file={'CPAnalysis' 'WPAnalysis' 'FWT_PO' 'FWT2_PO' 'IWT_PO' ...
	'IWT2_PO' 'UpDyadHi' 'UpDyadLo' 'DownDyadHi' 'DownDyadLo' 'dct_iv' ...
	'FCPSynthesis' 'FWPSynthesis' ...
	'dct_ii' 'dst_ii' 'dct_iii' 'dst_iii' ...
	'FWT_PBS' 'IWT_PBS' ...
	'FWT_TI' 'IWT_TI' ...
	'FMIPT' 'IMIPT' ...
	'FAIPT' 'IAIPT' 'LMIRefineSeq' 'MedRefineSeq'}
  
    file = char(file);
    disp(sprintf('%s.c',file));
    eval(sprintf('mex %s.c',file));
  end

  Friend = computer;
  isPC = 0; isMAC = 0;
  if strcmp(Friend(1:2),'PC')
    isPC = 1;
  elseif strcmp(Friend,'MAC2')
    isMAC = 1;
  end
  
  if isunix,
    !mv CPAnalysis.mex* ../Packets/One-D
    !mv WPAnalysis.mex* ../Packets/One-D
    !mv FWT_PO.mex* ../Orthogonal
    !mv FWT2_PO.mex* ../Orthogonal
    !mv IWT_PO.mex* ../Orthogonal
    !mv IWT2_PO.mex* ../Orthogonal
    !mv UpDyadHi.mex* ../Orthogonal
    !mv UpDyadLo.mex* ../Orthogonal
    !mv DownDyadHi.mex* ../Orthogonal
    !mv DownDyadLo.mex* ../Orthogonal
    !mv dct_iv.mex* ../Packets/One-D
    !mv FCPSynthesis.mex* ../Pursuit
    !mv FWPSynthesis.mex* ../Pursuit
    !mv dct_ii.mex* ../Meyer
    !mv dst_ii.mex* ../Meyer
    !mv dct_iii.mex* ../Meyer
    !mv dst_iii.mex* ../Meyer
    !mv FWT_PBS.mex* ../Biorthogonal
    !mv IWT_PBS.mex* ../Biorthogonal
    !mv FWT_TI.mex* ../Invariant
    !mv IWT_TI.mex* ../Invariant
    !mv FMIPT.mex* ../Median 
    !mv IMIPT.mex* ../Median
    !mv FAIPT.mex* ../Papers/MIPT
    !mv IAIPT.mex* ../Papers/MIPT
    !mv LMIRefineSeq.mex* ../Papers/MIPT
    !mv MedRefineSeq.mex* ../Papers/MIPT
  elseif isPC,
    dos('move CPAnalysis.mexw64 ..\Packets\One-D');
    dos('move WPAnalysis.mexw64 ..\Packets\One-D');
    dos('move FWT_PO.mexw64 ..\Orthogonal');
    dos('move FWT2_PO.mexw64 ..\Orthogonal');
    dos('move IWT_PO.mexw64 ..\Orthogonal');
    dos('move IWT2_PO.mexw64 ..\Orthogonal');
    dos('move UpDyadHi.mexw64 ..\Orthogonal');
    dos('move UpDyadLo.mexw64 ..\Orthogonal');
    dos('move DownDyadHi.mexw64 ..\Orthogonal');
    dos('move DownDyadLo.mexw64 ..\Orthogonal');
    dos('move dct_iv.mexw64 ..\Packets\One-D');
    dos('move FCPSynthesis.mexw64 ..\Pursuit');
    dos('move FWPSynthesis.mexw64 ..\Pursuit');
    dos('move dct_ii.mexw64 ..\Meyer');
    dos('move dst_ii.mexw64 ..\Meyer');
    dos('move dct_iii.mexw64 ..\Meyer');
    dos('move dst_iii.mexw64 ..\Meyer');
    dos('move FWT_PBS.mexw64 ..\Biorthogonal');
    dos('move IWT_PBS.mexw64 ..\Biorthogonal');
    dos('move FWT_TI.mexw64 ..\Invariant');
    dos('move IWT_TI.mexw64 ..\Invariant');
    dos('move FMIPT.mexw64 ..\Median ');
    dos('move IMIPT.mexw64 ..\Median');
    dos('move FAIPT.mexw64 ..\Papers\MIPT');
    dos('move IAIPT.mexw64 ..\Papers\MIPT');
    dos('move LMIRefineSeq.mexw64 ..\Papers\MIPT');
    dos('move MedRefineSeq.mexw64 ..\Papers\MIPT');
  elseif isMAC,
    acopy('CPAnalysis.mex', '::Packets:One-D')
    acopy('WPAnalysis.mex' ,'::Packets:One-D')
    acopy('FWT_PO.mex' ,'::Orthogonal')
    acopy('FWT2_PO.mex' ,'::Orthogonal')
    acopy('IWT_PO.mex' ,'::Orthogonal')
    acopy('IWT2_PO.mex' ,'::Orthogonal')
    acopy('UpDyadHi.mex' ,'::Orthogonal')
    acopy('UpDyadLo.mex' ,'::Orthogonal')
    acopy('DownDyadHi.mex' ,'::Orthogonal')
    acopy('DownDyadLo.mex' ,'::Orthogonal')
    acopy('dct_iv.mex' ,'::Packets:One-D')
    acopy('FCPSynthesis.mex' ,'::Pursuit')
    acopy('FWPSynthesis.mex' ,'::Pursuit')
    acopy('FastAllSeg.mex' ,'::Papers:MinEntSeg')
    acopy('dct_ii.mex' ,'::Meyer')
    acopy('dst_ii.mex' ,'::Meyer')
    acopy('dct_iii.mex' ,'::Meyer')
    acopy('dst_iii.mex' ,'::Meyer')
    acopy('FWT_PBS.mex' ,'::Biorthogonal')
    acopy('IWT_PBS.mex' ,'::Biorthogonal')
    acopy('FWT_TI.mex' ,'::Invariant')
    acopy('IWT_TI.mex' ,'::Invariant')
    acopy('FMIPT.mex' ,'::Median')
    acopy('IMIPT.mex' ,'::Median')
    acopy('FAIPT.mex' ,'::Papers:MIPT')
    acopy('IAIPT.mex' ,'::Papers:MIPT')
    acopy('LMIRefineSeq.mex' ,'::Papers:MIPT')
    acopy('MedRefineSeq.mex' ,'::Papers:MIPT')
  end
end
end

eval(sprintf('cd ''%s''', WAVELABPATH));

clear MEX_OK isPC R
 
 
%
%  Part of Wavelab Version 850
%  Built Tue Jan  3 13:20:38 EST 2006
%  This is Copyrighted Material
%  For Copying permissions see COPYING.m
%  Comments? e-mail wavelab@stat.stanford.edu 

startup.m

 You should install in your path the following directories:
%
%   WaveLab
%   WaveLab/Browsers/One-D
%   WaveLab/Datasets
%   WaveLab/DeNoising
%   WaveLab/FastAlgorithms
%   WaveLab/Interpolating
%   WaveLab/Orthogonal
%   WaveLab/Packets
%   WaveLab/Packets2
%   WaveLab/Papers
%   WaveLab/Papers/Adapt
%   WaveLab/Papers/Blocky
%	WaveLab/Papers/Ideal
%   WaveLab/Papers/ShortCourse
%   WaveLab/Papers/Tour
%   WaveLab/Papers/VillardDeLans
%   WaveLab/Pursuit
%   WaveLab/Stationary
%   WaveLab/Symmetric
%   WaveLab/Utilities
%   WaveLab/Workouts
%	WaveLab/Workouts/BestOrthoBasis
%   WaveLab/Workouts/MatchingPursuit
%   WaveLab/Workouts/Toons
%
% The file 'WavePath.m' in the current directory, accomplishes this,
% once you have edited it to reflect the correct pathname for WaveLab.
% [See INSTALLATION]. So edit WavePath.m and then invoke it at startup time.
WavePath
%
% WavePath also defines several global variables
%
InstallMEX
 
 
%
%  Part of Wavelab Version 850
%  Built Tue Jan  3 13:20:38 EST 2006
%  This is Copyrighted Material
%  For Copying permissions see COPYING.m
%  Comments? e-mail wavelab@stat.stanford.edu 
  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值