Mercurial > hg > smallbox
comparison DL/two-step DL/SMALL_two_step_DL.m @ 190:759313488e7b luisf_dev
Added two config files for the 2 step dic and learn scripts; removed 'extra' folder; created init script (initial version).
author | luisf <luis.figueira@eecs.qmul.ac.uk> |
---|---|
date | Tue, 13 Mar 2012 17:33:20 +0000 |
parents | af307f247ac7 |
children | d50f5bdbe14c |
comparison
equal
deleted
inserted
replaced
187:3cc204120431 | 190:759313488e7b |
---|---|
28 end | 28 end |
29 | 29 |
30 | 30 |
31 % initialize the dictionary % | 31 % initialize the dictionary % |
32 | 32 |
33 if (isfield(DL.param,'initdict')) | 33 % todo: check second if statement |
34 if (isfield(DL.param,'initdict')) && ~isempty(DL.param.initdict); | |
34 if (any(size(DL.param.initdict)==1) && all(iswhole(DL.param.initdict(:)))) | 35 if (any(size(DL.param.initdict)==1) && all(iswhole(DL.param.initdict(:)))) |
35 dico = sig(:,DL.param.initdict(1:dictsize)); | 36 dico = sig(:,DL.param.initdict(1:dictsize)); |
36 else | 37 else |
37 if (size(DL.param.initdict,1)~=size(sig,1) || size(DL.param.initdict,2)<dictsize) | 38 if (size(DL.param.initdict,1)~=size(sig,1) || size(DL.param.initdict,2)<dictsize) |
38 error('Invalid initial dictionary'); | 39 error('Invalid initial dictionary'); |
108 % main loop % | 109 % main loop % |
109 | 110 |
110 for i = 1:iternum | 111 for i = 1:iternum |
111 Problem.A = dico; | 112 Problem.A = dico; |
112 solver = SMALL_solve(Problem, solver); | 113 solver = SMALL_solve(Problem, solver); |
113 [dico, solver.solution] = dico_update(dico, sig, solver.solution, ... | 114 |
114 typeUpdate, flow, learningRate); | 115 % configuration file |
115 if (decorrelate) | 116 run([SMALL_path '/config/SMALL_two_step_DL_config.m']) |
116 dico = dico_decorr(dico, mu, solver.solution); | 117 |
117 end | 118 % [dico, solver.solution] = dico_update(dico, sig, solver.solution, ... |
119 % typeUpdate, flow, learningRate); | |
120 % if (decorrelate) | |
121 % dico = dico_decorr(dico, mu, solver.solution); | |
122 % end | |
118 | 123 |
119 if ((show_dictionary)&&(mod(i,show_iter)==0)) | 124 if ((show_dictionary)&&(mod(i,show_iter)==0)) |
120 dictimg = SMALL_showdict(dico,[8 8],... | 125 dictimg = SMALL_showdict(dico,[8 8],... |
121 round(sqrt(size(dico,2))),round(sqrt(size(dico,2))),'lines','highcontrast'); | 126 round(sqrt(size(dico,2))),round(sqrt(size(dico,2))),'lines','highcontrast'); |
122 figure(2); imagesc(dictimg);colormap(gray);axis off; axis image; | 127 figure(2); imagesc(dictimg);colormap(gray);axis off; axis image; |