Skip to content

Commit

Permalink
WIP - use new wavelet
Browse files Browse the repository at this point in the history
  • Loading branch information
Edouard2laire committed Mar 8, 2024
1 parent aa41afa commit 0818b31
Show file tree
Hide file tree
Showing 4 changed files with 33 additions and 3 deletions.
3 changes: 2 additions & 1 deletion best/mem/be_launch_mem.m
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,8 @@
transl = OPTIONS.automatic.selected_samples(3,ii);
wav = zeros( 1, nbSmp );
wav( nbSmp/2^scale + transl ) = 1;
wav = sparse(be_wavelet_inverse( wav, OPTIONS ));
%wav = sparse(be_wavelet_inverse( wav, OPTIONS ));
wav = sparse(BEst_Wave850synthesis( wav, OPTIONS.automatic.Winfo ));
SOL = sparse(vec) * wav;

else
Expand Down
12 changes: 12 additions & 0 deletions best/wmem/wavelet/BEst_Wave850analysis.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
function [ out_W, info ] = BEst_Wave850analysis( in_C, Nb_scales, Nb_level, Vmoments )
% Real Daubechies wavelet transform from Wavelab850
addpath(genpath('./Wavelab850'));
info.Wfiltre = MakeONFilter('Daubechies',2*(Vmoments+1));
info.Noff = Nb_scales - Nb_level;
out_W = zeros(size(in_C));
for i = 1:size(in_C,1)
out_W(i,:) = fwt_po(in_C(i,:),info.Noff,info.Wfiltre);
end
end


12 changes: 12 additions & 0 deletions best/wmem/wavelet/BEst_Wave850synthesis.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
function [out_C] = BEst_Wave850synthesis( in_W, Winfo)
% Real Daubechies wavelet reconstruction from Wavelab850
% Winfo.Noff : scaling level
% Winfo.Wfiltre: filter used for the previous decomposition
addpath(genpath('./Wavelab850'));
out_C = zeros(size(in_W));
for i = 1:size(in_W,1)
out_C(i,:) = iwt_po(in_W(i,:),Winfo.Noff,Winfo.Wfiltre);
end
end


9 changes: 7 additions & 2 deletions best/wmem/wavelet/be_discrete_wavelet_transform.m
Original file line number Diff line number Diff line change
Expand Up @@ -69,9 +69,14 @@
Njs = max(Nj-3,1);
SData = zeros(size(Data));
WData = zeros(size(Data));
[WData, info ] = be_dwanalysis( Data, Njs, filter );
WData(:,1:No/2^Njs) = 0.0;

%[WData, Winfo ] = be_dwanalysis( Data, Njs, filter );

[WData, Winfo ] = BEst_Wave850analysis(Data,Nj,Njs,3);
SData(:,1:No/2^Njs) = WData(:,1:No/2^Njs);
WData(:,1:No/2^Njs) = 0.0;

OPTIONS.automatic.Winfo = Winfo;
OPTIONS.automatic.scales(1,:) = 1:Njs;
OPTIONS.automatic.scales(2,:) = 3./2.^(1:Njs)/4;

Expand Down

0 comments on commit 0818b31

Please sign in to comment.