# HG changeset patch # User luisf # Date 1332246587 0 # Node ID 83af80baf959b9eee36c676cc1bafd6ae2276421 # Parent d00e97b2f1cb6b2da4ccb25d628d21fa052f347b Reverted SMALL_two_step to the original version; adds path in the Init script. diff -r d00e97b2f1cb -r 83af80baf959 DL/two-step DL/SMALL_two_step_DL.m --- a/DL/two-step DL/SMALL_two_step_DL.m Tue Mar 20 10:40:59 2012 +0000 +++ b/DL/two-step DL/SMALL_two_step_DL.m Tue Mar 20 12:29:47 2012 +0000 @@ -30,8 +30,7 @@ % initialize the dictionary % -% todo: check second if statement -if (isfield(DL.param,'initdict')) && ~isempty(DL.param.initdict); +if (isfield(DL.param,'initdict')) if (any(size(DL.param.initdict)==1) && all(iswhole(DL.param.initdict(:)))) dico = sig(:,DL.param.initdict(1:dictsize)); else @@ -98,7 +97,6 @@ % want sparse representation of training set, and in Problem.b1 in this % version of software we store the signal that needs to be represented % (for example the whole image) -global SMALL_path tmpTraining = Problem.b1; Problem.b1 = sig; @@ -112,15 +110,11 @@ for i = 1:iternum Problem.A = dico; solver = SMALL_solve(Problem, solver); - - % configuration file - run([SMALL_path '/config/SMALL_two_step_DL_config.m']) - -% [dico, solver.solution] = dico_update(dico, sig, solver.solution, ... -% typeUpdate, flow, learningRate); -% if (decorrelate) -% dico = dico_decorr(dico, mu, solver.solution); -% end + [dico, solver.solution] = dico_update(dico, sig, solver.solution, ... + typeUpdate, flow, learningRate); + if (decorrelate) + dico = dico_decorr(dico, mu, solver.solution); + end if ((show_dictionary)&&(mod(i,show_iter)==0)) dictimg = SMALL_showdict(dico,[8 8],... @@ -145,4 +139,4 @@ Y(blockids) = sum(X(:,blockids).^2); end -end +end \ No newline at end of file diff -r d00e97b2f1cb -r 83af80baf959 SMALLboxInit.m --- a/SMALLboxInit.m Tue Mar 20 10:40:59 2012 +0000 +++ b/SMALLboxInit.m Tue Mar 20 12:29:47 2012 +0000 @@ -1,5 +1,4 @@ global SMALL_path; -SMALL_path=[fileparts(mfilename('fullpath')) filesep]; +SMALL_path = fileparts(mfilename('fullpath')); -% SMALL_p = genpath(SMALL_path); -% addpath(SMALL_p); +addpath(genpath(SMALL_path)); diff -r d00e97b2f1cb -r 83af80baf959 config/SMALL_two_step_DL_config.m --- a/config/SMALL_two_step_DL_config.m Tue Mar 20 10:40:59 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ - - %DICTIONARY UPDATE STEP - if strcmpi(typeUpdate,'mocod') %if update is MOCOD create parameters structure - mocodParams = struct('zeta',DL.param.zeta,... %coherence regularization factor - 'eta',DL.param.eta,... %atoms norm regularization factor - 'Dprev',dico); %previous dictionary - % dico = dico_update(dico,sig,solver.solution,typeUpdate,flow,learningRate,mocodParams); - if ~isfield(DL.param,'decFcn'), DL.param.decFcn = 'none'; end - - dico = dico_update_mocod(dico,sig,solver.solution,typeUpdate,flow,learningRate,mocodParams); - - else - [dico, solver.solution] = dico_update(dico, sig, solver.solution, ... - typeUpdate, flow, learningRate); - dico = normcols(dico); - end - - switch lower(DL.param.decFcn) - case 'ink-svd' - dico = dico_decorr_symetric(dico,mu,solver.solution); - case 'grassmannian' - [n m] = size(dico); - dico = grassmannian(n,m,[],0.9,0.99,dico); - case 'shrinkgram' - dico = shrinkgram(dico,mu); - case 'iterproj' - dico = iterativeprojections(dico,mu,Problem.b1,solver.solution); - otherwise - end - \ No newline at end of file diff -r d00e97b2f1cb -r 83af80baf959 util/SMALL_learn.m --- a/util/SMALL_learn.m Tue Mar 20 10:40:59 2012 +0000 +++ b/util/SMALL_learn.m Tue Mar 20 12:29:47 2012 +0000 @@ -26,7 +26,7 @@ tStart=tic; % configuration file - run([SMALL_path 'config/SMALL_learn_config.m']); + run(fullfile(SMALL_path, 'config/SMALL_learn_config.m')); %% % Dictionary Learning time