-
Notifications
You must be signed in to change notification settings - Fork 1
/
energy_unpack.m
75 lines (66 loc) · 1.54 KB
/
energy_unpack.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
%% unpack scales bit
X=mean(X,3); %get rid of colour
X=X./mean(mean(X)); %normalize across images
clear r,
nscales=8;
nreps=500;
%X=waveorder2(X,1:8);
figure, imagesc(X), colormap ('gray'), drawnow
for j=1:8
for i=1:nreps
Y=waveswap2(X,j);
r(i,j)=rms(X(:)-Y(:));
end
end
figure(1), hold on, plot(1:j,r,'m')
figure(1), plot(1:j,mean(r),'k'),
ylim([0 0.5])
save wombat X r
%% heating and cooling bit
load wombat
m=[0:5:100];
nreps=100;
nscales=8;
sh=zeros(nscales,length(m));
for n=1:nscales;
for j=2:length(m),
clear YY
for i=1:nreps,
Y=waveswap2(X,n,'db4',m(j));
YY(:,i)=Y(:);
end
sh(n,j)=mean(std(YY'));
end
end
figure, imagesc(m,1:n,sh)
figure, plot(m,sh)
sc=zeros(nscales,length(m));
for n=1:8;
for j=2:length(m),
clear YY
for i=1:nreps,
Y=waveorder2(X,n,'db4',m(j));
YY(:,i)=Y(:);
end
sc(n,j)=mean(std(YY'));
end
end
figure, imagesc(m,1:n,sc)
figure, plot(m,sc)
save wombat X r m n sh sc
%% Movie bit
clims = [min(min(X)) max(max(X))];
loops=0:1:100;
%F(length(loops)) = struct('cdata',[],'colormap',[]);
v=VideoWriter('order_wombat');
v.FrameRate=10;
open(v)
for i=1:length(loops),
Y=waveorder2(X,1:8,'db4',loops(end)-loops(i),1);
%Y=waveswap2(X,1:8,'db4',loops(end)-loops(i));
%figure(11), image(uint8(Y),clims), xticks([]), yticks([]), drawnow,
figure(11), imagesc(Y,clims), colormap(gray), xticks([]), yticks([]), drawnow,
frame=getframe(gcf);
writeVideo(v,frame);
end
close(v)