idamnjanovic@1
|
1 function SMALLboxSetup(varargin)
|
idamnjanovic@12
|
2 %
|
idamnjanovic@12
|
3 % SMALLboxSetup
|
idamnjanovic@12
|
4 %
|
idamnjanovic@12
|
5 % Will automatically download and install existing toolboxes
|
idamnjanovic@12
|
6 % on sparse representations and dictionary learning
|
idamnjanovic@12
|
7 %
|
idamnjanovic@12
|
8 % For this function an internet connection is required.
|
idamnjanovic@1
|
9 %
|
idamnjanovic@1
|
10 % SMALLbox initialisation
|
idamnjanovic@1
|
11 % Ivan Damnjanovic, Matthew Davies 2009
|
idamnjanovic@1
|
12
|
idamnjanovic@1
|
13
|
idamnjanovic@12
|
14 %%
|
idamnjanovic@1
|
15 clc;
|
idamnjanovic@1
|
16
|
idamnjanovic@1
|
17 FS=filesep;
|
idamnjanovic@1
|
18
|
idamnjanovic@1
|
19 fprintf('\n ********************************************************************');
|
idamnjanovic@1
|
20 fprintf('\n\n This script will install the SMALLbox Evaluation Framework v.0.4');
|
idamnjanovic@1
|
21 fprintf('\n\n It contains the following toolboxes:');
|
idamnjanovic@1
|
22 fprintf('\n Sparco version 1.2, incorporating Rice Wavelet Toolbox version 2.4');
|
idamnjanovic@1
|
23 fprintf('\n SPGL1 Toolbox version 1.7 ');
|
idamnjanovic@1
|
24 fprintf('\n SparseLab Toolbox version 2.1');
|
idamnjanovic@1
|
25 fprintf('\n Sparsify Toolbox version 0.4');
|
idamnjanovic@1
|
26 fprintf('\n GPSR Toolbox version 5.0');
|
idamnjanovic@12
|
27 fprintf('\n OMPbox version 10');
|
idamnjanovic@12
|
28 fprintf('\n OMPSbox version 1');
|
idamnjanovic@12
|
29 fprintf('\n KSVDbox version 13');
|
idamnjanovic@12
|
30 fprintf('\n KSVDSbox version 11');
|
idamnjanovic@1
|
31 fprintf('\n\n ********************************************************************');
|
idamnjanovic@1
|
32
|
idamnjanovic@1
|
33 fprintf('\n\n The toolbox will be installed in: ');
|
idamnjanovic@1
|
34 fprintf('\n %s%s\n',pwd,FS);
|
idamnjanovic@1
|
35 fprintf('\n ********************************************************************');
|
idamnjanovic@1
|
36 fprintf('\n\n IMPORTANT: To successfully install all toolboxes');
|
idamnjanovic@1
|
37 fprintf('\n you will need to have MEX setup to compile C files.');
|
idamnjanovic@1
|
38 fprintf('\n\n If this is not already setup, please type "n" to exit and then ');
|
idamnjanovic@1
|
39 fprintf('\n run "mex -setup" or type "help mex" in the MATLAB command prompt.');
|
idamnjanovic@1
|
40 fprintf('\n\n ********************************************************************');
|
idamnjanovic@1
|
41
|
idamnjanovic@1
|
42
|
idamnjanovic@1
|
43 fprintf('\n ********************************************************************');
|
idamnjanovic@1
|
44 fprintf('\n\n IMPORTANT: YOU MUST HAVE AN INTERNET CONNECTION');
|
idamnjanovic@1
|
45 fprintf('\n YOU CANNOT INSTALL SMALLBOX WITHOUT ONE!');
|
idamnjanovic@1
|
46 fprintf('\n\n ********************************************************************');
|
idamnjanovic@1
|
47 install_ack = input('\n\n Do you wish to continue: ([y]/n)? ','s');
|
idamnjanovic@1
|
48
|
idamnjanovic@1
|
49 if strcmp(install_ack,'"n"'),
|
idamnjanovic@1
|
50 install_ack = 'n';
|
idamnjanovic@1
|
51 end
|
idamnjanovic@1
|
52
|
idamnjanovic@1
|
53 if install_ack == 'n',
|
idamnjanovic@1
|
54 return;
|
idamnjanovic@1
|
55 else
|
idamnjanovic@1
|
56 fprintf('\n\n Installation now beginning...');
|
idamnjanovic@12
|
57
|
idamnjanovic@1
|
58 end
|
idamnjanovic@1
|
59
|
idamnjanovic@1
|
60
|
idamnjanovic@1
|
61
|
idamnjanovic@1
|
62
|
idamnjanovic@1
|
63 SMALL_path=pwd;
|
idamnjanovic@1
|
64 SMALL_p=genpath(SMALL_path);
|
idamnjanovic@1
|
65 addpath(SMALL_p);
|
idamnjanovic@1
|
66
|
idamnjanovic@1
|
67
|
idamnjanovic@12
|
68 %%
|
idamnjanovic@1
|
69
|
idamnjanovic@1
|
70
|
idamnjanovic@12
|
71 if ~exist('sparcoSetup.m','file')
|
idamnjanovic@12
|
72 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
73 fprintf('\n\n Initialising SPARCO and Rice Wavelet Toolbox Setup');
|
idamnjanovic@12
|
74
|
idamnjanovic@1
|
75 Sparco_path = [SMALL_path,FS,'toolboxes',FS,'SPARCO'];
|
idamnjanovic@1
|
76 if exist([Sparco_path, FS, 'sparco-1.2.zip'],'file'),
|
idamnjanovic@1
|
77 Sparco_zip=[Sparco_path, FS, 'sparco-1.2.zip'];
|
idamnjanovic@1
|
78 else
|
idamnjanovic@1
|
79 Sparco_zip='http://www.cs.ubc.ca/labs/scl/sparco/downloads.php?filename=sparco-1.2.zip';
|
idamnjanovic@1
|
80 fprintf('\n\n Downloading toolbox, please be patient\n\n');
|
idamnjanovic@1
|
81 end
|
idamnjanovic@1
|
82 unzip(Sparco_zip,Sparco_path);
|
idamnjanovic@1
|
83 Sparco_p=genpath(Sparco_path);
|
idamnjanovic@1
|
84 addpath(Sparco_p);
|
idamnjanovic@1
|
85 cd(SMALL_path)
|
idamnjanovic@12
|
86
|
idamnjanovic@12
|
87
|
idamnjanovic@12
|
88
|
idamnjanovic@12
|
89 if exist('curvelab.pdf','file')
|
idamnjanovic@12
|
90 crvroot = fileparts(which('curvelab.pdf'));
|
idamnjanovic@12
|
91 addtopath(crvroot,'fdct_usfft_matlab');
|
idamnjanovic@12
|
92 addtopath(crvroot,'fdct_wrapping_matlab');
|
idamnjanovic@12
|
93 addtopath(crvroot,'fdct_wrapping_cpp/mex');
|
idamnjanovic@12
|
94 addtopath(crvroot,'fdct3d/mex');
|
idamnjanovic@12
|
95 else
|
idamnjanovic@12
|
96 fprintf(['\nWarning: CurveLab is not in the path. Sparco Problems 50-51 ' ...
|
idamnjanovic@1
|
97 'will not work.\n\n']);
|
idamnjanovic@12
|
98 end
|
idamnjanovic@12
|
99
|
idamnjanovic@1
|
100 cd([Sparco_path, FS, 'sparco-1.2', FS, 'tools' ,FS, 'rwt'])
|
idamnjanovic@1
|
101 fprintf('Compiling the Rice Wavelet Toolbox MEX interfaces...');
|
idamnjanovic@1
|
102 try
|
idamnjanovic@1
|
103 if exist('mdwt' ,'file')~=3, mex mdwt.c mdwt_r.c; end
|
idamnjanovic@1
|
104 if exist('midwt' ,'file')~=3, mex midwt.c midwt_r.c; end
|
idamnjanovic@1
|
105 if exist('mrdwt' ,'file')~=3, mex mrdwt.c mrdwt_r.c; end
|
idamnjanovic@1
|
106 if exist('mirdwt','file')~=3, mex mirdwt.c mirdwt_r.c; end
|
idamnjanovic@1
|
107 fprintf('SPARCO Installation Successful!\n');
|
idamnjanovic@1
|
108 catch
|
idamnjanovic@1
|
109 warning('Could not compile Rice Wavelet Toolbox MEX interfaces.');
|
idamnjanovic@1
|
110 end
|
idamnjanovic@12
|
111 cd(SMALL_path);
|
idamnjanovic@12
|
112 else
|
idamnjanovic@12
|
113 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
114 fprintf('\n\n SPARCO and Rice Wavelet Toolbox are already installed');
|
idamnjanovic@12
|
115 end
|
idamnjanovic@12
|
116 %%
|
idamnjanovic@1
|
117
|
idamnjanovic@1
|
118
|
idamnjanovic@12
|
119 if ~exist('spgsetup.m','file')
|
idamnjanovic@12
|
120 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
121 fprintf('\n\n Initialising SPGL1 Setup');
|
idamnjanovic@12
|
122
|
idamnjanovic@12
|
123 try
|
idamnjanovic@12
|
124 SPGL1_path = [SMALL_path,FS,'toolboxes',FS,'SPGL1'];
|
idamnjanovic@12
|
125 if exist([SPGL1_path, FS, 'spgl1-1.7.zip'],'file'),
|
idamnjanovic@12
|
126 SPGL1_zip=[SPGL1_path, FS, 'spgl1-1.7.zip'];
|
idamnjanovic@12
|
127 else
|
idamnjanovic@12
|
128 SPGL1_zip='http://www.cs.ubc.ca/labs/scl/spgl1/downloads.php?filename=spgl1-1.7.zip';
|
idamnjanovic@12
|
129 fprintf('\n\n Downloading toolbox, please be patient\n\n');
|
idamnjanovic@12
|
130 end
|
idamnjanovic@12
|
131 unzip(SPGL1_zip,SPGL1_path);
|
idamnjanovic@12
|
132 SPGL1_p=genpath(SPGL1_path);
|
idamnjanovic@12
|
133 addpath(SPGL1_p);
|
idamnjanovic@12
|
134
|
idamnjanovic@12
|
135
|
idamnjanovic@12
|
136 cd([SPGL1_path,FS,'spgl1-1.7']);
|
idamnjanovic@12
|
137 fprintf('Compiling SPGL1 MEX interfaces ...');
|
idamnjanovic@12
|
138 try
|
idamnjanovic@12
|
139 spgsetup;
|
idamnjanovic@12
|
140 fprintf('\n SPGL1 Installation Successful!\n');
|
idamnjanovic@12
|
141 catch
|
idamnjanovic@12
|
142 warning('Could not compile SPGL1 MEX interfaces.');
|
idamnjanovic@12
|
143 end
|
idamnjanovic@12
|
144 catch
|
idamnjanovic@12
|
145 fprintf('\n SPGL1 Installation Failed\n');
|
idamnjanovic@12
|
146 end
|
idamnjanovic@12
|
147 cd(SMALL_path);
|
idamnjanovic@12
|
148 else
|
idamnjanovic@12
|
149 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
150 fprintf('\n\n SPGL1 is already installed');
|
idamnjanovic@12
|
151 end
|
idamnjanovic@12
|
152 %%
|
idamnjanovic@1
|
153
|
idamnjanovic@12
|
154 if ~exist('SparsePath.m','file')
|
idamnjanovic@12
|
155 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
156 fprintf('\n\n Initialising SparseLab Setup');
|
idamnjanovic@12
|
157
|
idamnjanovic@12
|
158 try
|
idamnjanovic@12
|
159 SL_path = [pwd,FS,'toolboxes',FS,'SparseLab'];
|
idamnjanovic@12
|
160 if exist([SL_path, FS, 'SparseLab21-Core.zip'],'file'),
|
idamnjanovic@12
|
161 SL_zip=[SL_path, FS, 'SparseLab21-Core.zip'];
|
idamnjanovic@12
|
162 else
|
idamnjanovic@12
|
163 SL_zip='http://sparselab.stanford.edu/SparseLab_files/Download_files/SparseLab21-Core.zip';
|
idamnjanovic@12
|
164 fprintf('\n\n Downloading toolbox, please be patient\n\n');
|
idamnjanovic@12
|
165 end
|
idamnjanovic@12
|
166 unzip(SL_zip,SL_path);
|
idamnjanovic@12
|
167 SL_p=genpath(SL_path);
|
idamnjanovic@12
|
168 addpath(SL_p);
|
idamnjanovic@12
|
169 fprintf('\n SparseLab Installation Successful!\n');
|
idamnjanovic@12
|
170 catch
|
idamnjanovic@12
|
171 fprintf('\n SparseLab Installation Failed\n');
|
idamnjanovic@12
|
172 cd(SMALL_path);
|
idamnjanovic@12
|
173 end
|
idamnjanovic@12
|
174 else
|
idamnjanovic@12
|
175 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
176 fprintf('\n\n SparseLab is already installed');
|
idamnjanovic@12
|
177 end
|
idamnjanovic@12
|
178 %%
|
idamnjanovic@1
|
179
|
idamnjanovic@12
|
180 if ~exist('greed_pcgp.m','file')
|
idamnjanovic@12
|
181 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
182 fprintf('\n\n Initialising Sparsify Setup');
|
idamnjanovic@12
|
183
|
idamnjanovic@12
|
184 try
|
idamnjanovic@12
|
185 Sparsify_path = [pwd,FS,'toolboxes',FS,'Sparsify'];
|
idamnjanovic@12
|
186 if exist([Sparsify_path, FS, 'sparsify_0_4.zip'],'file'),
|
idamnjanovic@12
|
187 Sparsify_zip=[Sparsify_path, FS, 'sparsify_0_4.zip'];
|
idamnjanovic@12
|
188 else
|
idamnjanovic@12
|
189 Sparsify_zip='http://www.see.ed.ac.uk/~tblumens/sparsify/sparsify_0_4.zip';
|
idamnjanovic@12
|
190 fprintf('\n\n Downloading toolbox, please be patient\n\n');
|
idamnjanovic@12
|
191 end
|
idamnjanovic@12
|
192 unzip(Sparsify_zip,Sparsify_path);
|
idamnjanovic@12
|
193 Sparsify_p=genpath(Sparsify_path);
|
idamnjanovic@12
|
194 addpath(Sparsify_p);
|
idamnjanovic@12
|
195 fprintf('\n Sparsify Installation Successful\n');
|
idamnjanovic@12
|
196 catch
|
idamnjanovic@12
|
197 fprintf('\n Sparsify Installation Failed\n');
|
idamnjanovic@12
|
198 cd(SMALL_path);
|
idamnjanovic@12
|
199 end
|
idamnjanovic@12
|
200 else
|
idamnjanovic@12
|
201 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
202 fprintf('\n\n Sparsify is already installed');
|
idamnjanovic@12
|
203 end
|
idamnjanovic@12
|
204 %%
|
idamnjanovic@12
|
205 if ~exist('GPSR_Basic.m','file')
|
idamnjanovic@12
|
206 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
207 fprintf('\n\n Initialising GPSR Setup');
|
idamnjanovic@12
|
208
|
idamnjanovic@12
|
209 try
|
idamnjanovic@12
|
210 GPSR_path = [pwd,FS,'toolboxes',FS,'GPSR'];
|
idamnjanovic@12
|
211 if exist([GPSR_path, FS, 'GPSR_6.0.zip'],'file'),
|
idamnjanovic@12
|
212 GPSR_zip=[GPSR_path, FS,'GPSR_6.0.zip'];
|
idamnjanovic@12
|
213 else
|
idamnjanovic@12
|
214 GPSR_zip='http://www.lx.it.pt/~mtf/GPSR/GPSR_6.0.zip';
|
idamnjanovic@12
|
215 fprintf('\n\n Downloading toolbox, please be patient\n\n');
|
idamnjanovic@12
|
216 end
|
idamnjanovic@12
|
217 unzip(GPSR_zip,GPSR_path);
|
idamnjanovic@12
|
218 GPSR_p=genpath(GPSR_path);
|
idamnjanovic@12
|
219 addpath(GPSR_p);
|
idamnjanovic@12
|
220 fprintf('\n GPSR Installation Successful\n');
|
idamnjanovic@12
|
221 catch
|
idamnjanovic@12
|
222 fprintf('\n GPSR Installation Failed');
|
idamnjanovic@12
|
223 cd(SMALL_path);
|
idamnjanovic@12
|
224 end
|
idamnjanovic@12
|
225 else
|
idamnjanovic@12
|
226 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
227 fprintf('\n\n GPSR is already installed');
|
idamnjanovic@12
|
228 end
|
idamnjanovic@12
|
229
|
idamnjanovic@12
|
230 %%
|
idamnjanovic@12
|
231
|
idamnjanovic@12
|
232 if ~exist('ksvdver.m','file')
|
idamnjanovic@12
|
233 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
234 fprintf('\n\n Initialising OMPbox and KSVDBox Setup');
|
idamnjanovic@12
|
235
|
idamnjanovic@12
|
236 try
|
idamnjanovic@12
|
237 KSVD_path = [pwd,FS,'toolboxes',FS,'KSVD'];
|
idamnjanovic@12
|
238 if exist([KSVD_path, FS, 'ompbox10.zip'],'file'),
|
idamnjanovic@12
|
239 omp_zip=[KSVD_path, FS, 'ompbox10.zip'];
|
idamnjanovic@12
|
240 else
|
idamnjanovic@12
|
241 omp_zip='http://www.cs.technion.ac.il/%7Eronrubin/Software/ompbox10.zip';
|
idamnjanovic@12
|
242 fprintf('\n\n Downloading toolbox, please be patient\n\n');
|
idamnjanovic@12
|
243 end
|
idamnjanovic@12
|
244 unzip(omp_zip,[KSVD_path, FS, 'ompbox']);
|
idamnjanovic@12
|
245
|
idamnjanovic@12
|
246 cd([KSVD_path, FS, 'ompbox', FS, 'private']);
|
idamnjanovic@12
|
247 make;
|
idamnjanovic@12
|
248 cd(SMALL_path);
|
idamnjanovic@12
|
249
|
idamnjanovic@12
|
250 if exist([KSVD_path, FS, 'ksvdbox13.zip'],'file'),
|
idamnjanovic@12
|
251 KSVD_zip=[KSVD_path, FS, 'ksvdbox13.zip'];
|
idamnjanovic@12
|
252 else
|
idamnjanovic@12
|
253 KSVD_zip='http://www.cs.technion.ac.il/%7Eronrubin/Software/ksvdbox13.zip';
|
idamnjanovic@12
|
254 fprintf('\n\n Downloading toolbox, please be patient\n\n');
|
idamnjanovic@12
|
255 end
|
idamnjanovic@12
|
256 unzip(KSVD_zip,[KSVD_path, FS, 'ksvdbox']);
|
idamnjanovic@12
|
257 cd([KSVD_path, FS, 'ksvdbox', FS, 'private']);
|
idamnjanovic@12
|
258 make;
|
idamnjanovic@12
|
259 cd(SMALL_path);
|
idamnjanovic@12
|
260 KSVD_p=genpath(KSVD_path);
|
idamnjanovic@12
|
261 addpath(KSVD_p);
|
idamnjanovic@12
|
262 fprintf('\n KSVDBox and OMPBox Installation Successful\n');
|
idamnjanovic@12
|
263 catch
|
idamnjanovic@12
|
264 fprintf('\n KSVDBox and OMPBox Installation Failed');
|
idamnjanovic@12
|
265 cd(SMALL_path);
|
idamnjanovic@12
|
266 end
|
idamnjanovic@12
|
267 else
|
idamnjanovic@12
|
268 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
269 fprintf('\n\n KSVD is already installed');
|
idamnjanovic@12
|
270 end
|
idamnjanovic@12
|
271 %%
|
idamnjanovic@12
|
272 if ~exist('ksvdsver.m','file')
|
idamnjanovic@12
|
273 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
274 fprintf('\n\n Initialising OMPSbox and KSVDSBox Setup');
|
idamnjanovic@12
|
275
|
idamnjanovic@12
|
276 try
|
idamnjanovic@12
|
277 KSVDS_path = [pwd,FS,'toolboxes',FS,'KSVDS'];
|
idamnjanovic@12
|
278 if exist([KSVDS_path, FS, 'ompsbox1.zip'],'file'),
|
idamnjanovic@12
|
279 omps_zip=[KSVDS_path, FS, 'ompsbox1.zip'];
|
idamnjanovic@12
|
280 else
|
idamnjanovic@12
|
281 omps_zip='http://www.cs.technion.ac.il/%7Eronrubin/Software/ompsbox1.zip';
|
idamnjanovic@12
|
282 fprintf('\n\n Downloading toolbox, please be patient\n\n');
|
idamnjanovic@12
|
283 end
|
idamnjanovic@12
|
284 unzip(omps_zip,[KSVDS_path, FS, 'ompsbox']);
|
idamnjanovic@12
|
285
|
idamnjanovic@12
|
286 cd([KSVDS_path, FS, 'ompsbox', FS, 'private']);
|
idamnjanovic@12
|
287 make;
|
idamnjanovic@12
|
288 cd(SMALL_path);
|
idamnjanovic@12
|
289
|
idamnjanovic@12
|
290 if exist([KSVDS_path, FS, 'ksvdsbox11.zip'],'file'),
|
idamnjanovic@12
|
291 KSVDS_zip=[KSVDS_path, FS, 'ksvdsbox11.zip'];
|
idamnjanovic@12
|
292 else
|
idamnjanovic@12
|
293 KSVDS_zip='http://www.cs.technion.ac.il/%7Eronrubin/Software/ksvdsbox11.zip';
|
idamnjanovic@12
|
294 fprintf('\n\n Downloading toolbox, please be patient\n\n');
|
idamnjanovic@12
|
295 end
|
idamnjanovic@12
|
296 unzip(KSVDS_zip,[KSVDS_path, FS, 'ksvdsbox']);
|
idamnjanovic@12
|
297 cd([KSVDS_path, FS, 'ksvdsbox', FS, 'private']);
|
idamnjanovic@12
|
298 make;
|
idamnjanovic@12
|
299 cd(SMALL_path);
|
idamnjanovic@12
|
300 KSVDS_p=genpath(KSVDS_path);
|
idamnjanovic@12
|
301 addpath(KSVDS_p);
|
idamnjanovic@12
|
302 fprintf('\n KSVDSbox and OMPSbox Installation Successful\n');
|
idamnjanovic@12
|
303 catch
|
idamnjanovic@12
|
304 fprintf('\n KSVDSbox and OMPSbox Installation Failed');
|
idamnjanovic@12
|
305 cd(SMALL_path);
|
idamnjanovic@12
|
306 end
|
idamnjanovic@12
|
307 else
|
idamnjanovic@12
|
308 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
309 fprintf('\n\n KSVDS is already installed');
|
idamnjanovic@12
|
310 end
|
idamnjanovic@12
|
311 %%
|
idamnjanovic@12
|
312
|
idamnjanovic@12
|
313 if ~exist('mexTrainDL.m','file')
|
idamnjanovic@12
|
314 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
315 fprintf('\n\n If you want to use SMALLbox with SPAMS On-line Dictionary Learning please go to:');
|
idamnjanovic@12
|
316 fprintf('\n http://www.di.ens.fr/willow/SPAMS/index.html');
|
idamnjanovic@12
|
317 fprintf('\n and follow the instructions. The License prohibits redistribution of the SPAMS.');
|
idamnjanovic@12
|
318
|
idamnjanovic@12
|
319 else
|
idamnjanovic@12
|
320 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
321 fprintf('\n\n SPAMS On-line Dictionary Learning is already installed');
|
idamnjanovic@12
|
322 end;
|
idamnjanovic@12
|
323 %%
|
idamnjanovic@12
|
324
|
idamnjanovic@12
|
325
|
idamnjanovic@12
|
326 if ~exist('midiInfo.m','file')
|
idamnjanovic@12
|
327 try
|
idamnjanovic@12
|
328 matlab_midi_path = [pwd,FS,'util',FS,'matlab_midi'];
|
idamnjanovic@12
|
329 if exist([matlab_midi_path, FS, 'matlab_midi.zip'],'file'),
|
idamnjanovic@12
|
330 matlab_midi_zip=[SL_path, FS, 'matlab_midi.zip'];
|
idamnjanovic@1
|
331 else
|
idamnjanovic@12
|
332 matlab_midi_zip='http://www.kenschutte.com/static/code/matlab_midi.zip';
|
idamnjanovic@1
|
333 fprintf('\n\n Downloading toolbox, please be patient\n\n');
|
idamnjanovic@1
|
334 end
|
idamnjanovic@12
|
335 unzip(matlab_midi_zip,matlab_midi_path);
|
idamnjanovic@12
|
336 matlab_midi_p=genpath(matlab_midi_path);
|
idamnjanovic@12
|
337 addpath(matlab_midi_p);
|
idamnjanovic@12
|
338 fprintf('\n matlab_midi (http://www.kenschutte.com/midi/) Installation Successful!\n');
|
idamnjanovic@12
|
339 catch
|
idamnjanovic@12
|
340 fprintf('\n matlab_midi (http://www.kenschutte.com/midi/) Installation Failed\n');
|
idamnjanovic@1
|
341 cd(SMALL_path);
|
idamnjanovic@12
|
342 end
|
idamnjanovic@12
|
343 else
|
idamnjanovic@12
|
344 fprintf('\n ******************************************************************');
|
idamnjanovic@12
|
345 fprintf('\n\n matlab_midi (http://www.kenschutte.com/midi/) is already installed');
|
idamnjanovic@12
|
346 end
|
idamnjanovic@12
|
347 %%
|
idamnjanovic@1
|
348
|
idamnjanovic@1
|
349
|
idamnjanovic@1
|
350 fprintf('\n ******************************************************************');
|
idamnjanovic@1
|
351 fprintf('\n\n Initialising SMALLbox Examples Setup');
|
idamnjanovic@1
|
352
|
idamnjanovic@1
|
353 % Need to do a bit of temporary housekeeping first.
|
idamnjanovic@1
|
354 cd(SMALL_path);
|
idamnjanovic@1
|
355 try
|
idamnjanovic@12
|
356 cd(['Problems',FS,'private']);
|
idamnjanovic@1
|
357 if exist('addtocols' ,'file')~=3,
|
idamnjanovic@1
|
358 fprintf('\n Compiling MEX interfaces for SMALL examples \n');
|
idamnjanovic@1
|
359 make;
|
idamnjanovic@1
|
360 end
|
idamnjanovic@14
|
361 fprintf('\n SMALLbox Problems Installation Successful! \n');
|
idamnjanovic@1
|
362 catch
|
idamnjanovic@14
|
363 fprintf('\n SMALLbox Problems Installation Failed \n');
|
idamnjanovic@1
|
364 end
|
idamnjanovic@1
|
365 cd(SMALL_path);
|
idamnjanovic@1
|
366
|
idamnjanovic@1
|
367
|
idamnjanovic@1
|
368
|
idamnjanovic@1
|
369 fprintf('\n ******************************************************************');
|
idamnjanovic@1
|
370 fprintf('\n\n SMALLbox Installation Complete!');
|
idamnjanovic@1
|
371
|
idamnjanovic@1
|
372
|
idamnjanovic@1
|
373 fprintf('\n\n For more information on the installed toolboxes see');
|
idamnjanovic@1
|
374 fprintf('\n\n Sparco: http://www.cs.ubc.ca/labs/scl/sparco/');
|
idamnjanovic@1
|
375 fprintf('\n\n SPGL1: http://www.cs.ubc.ca/labs/spgl1/?n=HomePage');
|
idamnjanovic@1
|
376 fprintf('\n\n SparseLab: http://sparselab.stanford.edu/ (PLEASE REGISTER SPARSELAB!)');
|
idamnjanovic@1
|
377 fprintf('\n\n Sparsify: http://www.see.ed.ac.uk/~tblumens/sparsify/sparsify.html');
|
idamnjanovic@1
|
378 fprintf('\n\n GPSR: http://www.lx.it.pt/~mtf/GPSR/');
|
idamnjanovic@1
|
379 fprintf('\n\n OMPbox and KSVDBox: http://www.cs.technion.ac.il/~ronrubin/\n');
|
idamnjanovic@1
|
380
|
idamnjanovic@1
|
381
|
idamnjanovic@1
|
382 % LIST DEMOS FROM EXAMPLE DIRECTORY...
|
idamnjanovic@1
|
383
|
idamnjanovic@1
|
384 demo_ack = input('\n\n Would you like to run a demo: ([y]/n)? ','s');
|
idamnjanovic@1
|
385
|
idamnjanovic@1
|
386 if demo_ack == 'n',
|
idamnjanovic@1
|
387 fprintf('\n Thank you for installing SMALLbox.');
|
idamnjanovic@1
|
388 fprintf('\n For information on the SMALLbox example scripts');
|
idamnjanovic@1
|
389 fprintf('\n Please see the examples directory. \n');
|
idamnjanovic@1
|
390 return;
|
idamnjanovic@1
|
391 else
|
idamnjanovic@1
|
392
|
idamnjanovic@12
|
393 demo_choice = input('\n 1 to run SMALL_solver_test \n 2 to run Dictionary Learning for Image Denoising demo \n q to quit: ','s');
|
idamnjanovic@1
|
394 switch(demo_choice)
|
idamnjanovic@1
|
395 case{'1'}
|
idamnjanovic@1
|
396 fprintf('\n Running SMALL_solver_test problem');
|
idamnjanovic@1
|
397 SMALL_solver_test;
|
idamnjanovic@1
|
398 case{'2'}
|
idamnjanovic@12
|
399 fprintf('\n Running SMALL Image Denoise problem');
|
idamnjanovic@12
|
400 SMALL_ImgDenoise_DL_test_KSVDvsSPAMS;
|
idamnjanovic@1
|
401 otherwise
|
idamnjanovic@1
|
402 return;
|
idamnjanovic@1
|
403 end
|
idamnjanovic@1
|
404
|
idamnjanovic@1
|
405 end
|
idamnjanovic@12
|
406
|
idamnjanovic@12
|
407
|
idamnjanovic@1
|
408
|