view DL/Majorization Minimization DL/ExactDicoRecovery/dict_update_KSVD_cn.m @ 237:d4e792f5d382

Added tag ver_2.0_alpha1 for changeset 5f4e47b78f2b
author luisf <luis.figueira@eecs.qmul.ac.uk>
date Thu, 19 Apr 2012 17:59:18 +0100
parents b14209313ba4
children
line wrap: on
line source
function[Phiout,unhatnz] = dict_update_KSVD_cn(Phi,x,unhat)
%% K-SVD Dictionary Learning with the constraint on the column norms %%%%%

%%
unhatn = unhat;
rPerm = randperm(size(Phi,2));
%% for l = 1:size(Phi,2),
for l = rPerm
    unhatns = unhat;
    unhatns(l,:) = zeros(1,size(unhat,2));
    E = x-Phi*unhatns;
    ER = E(:,(abs(unhat(l,:))>0));
    [U,S,V] = svd(ER,0);
    Phi(:,l) = U(:,1)
    unhatn(l,:) = zeros(1,size(unhat,2));
    unhatn(l,(abs(unhat(l,:))>0)) = S(1,1)*V(:,1);
    unhat = unhatn;
end
%%
unhatnz = unhat;
Phiout = Phi;
end