📄 lwaverec2.m
字号:
function f_column=lwaverec2(f_row,N)
T=N/2;
f_row=double(f_row);
%%%%%%%%%%%%%%%%%%%%%%%%%%%反变换
%%%%%1.行变换
%A.提取(低频高频分开)
f1=f_row(:,[T+1:1:N]); %高频
f2=f_row(:,[1:1:T]); %低频
%f2(:,T+1)=f2(:,1); %补行
%B.更新
for i_lr=1:T;
low_frequency_row(:,i_lr)=f2(:,i_lr)-floor(f1(:,i_lr)/2);
end;
%C.预测
for i_hr=1:T;
high_frequency_row(:,i_hr)=f1(:,i_hr)+low_frequency_row(:,i_hr);
end;
%high_frequency_row(:,T+1)=high_frequency_row(:,1); %补列
%D.合并(奇偶分开合并)
f_row(:,[2:2:N])=low_frequency_row(:,[1:T]);
f_row(:,[1:2:N-1])=high_frequency_row(:,[1:T]);
%figure(3)
%map=gray(256);
%subplot(1,2,1);image(uint8(f_row));colormap(map);title('行反变换图像');
%ff2=f_row;
%error=(ff1-ff2).^2 ;%相应像素的平方误差
%MSE=sum(error(:))/prod(size(ff2))%计算归一化图像的均方误差
%%%%%%2.列变换
%A.提取(低频高频分开)
f1=f_row([T+1:1:N],:); %奇数
f2=f_row([1:1:T],:); %偶数
%f1(:,T+1)=f1(:,1); %补列
%f2(T+1,:)=f2(1,:); %补行
%B.更新
for i_lc=1:T;
low_frequency_column(i_lc,:)=f2(i_lc,:)-floor(f1(i_lc,:)/2);
end;
%C.预测
for i_hc=1:T;
high_frequency_column(i_hc,:)=f1(i_hc,:)+low_frequency_column(i_hc,:);
end;
%high_frequency_column(T+1,:)=high_frequency_column(1,:);%补行
%D.合并(奇偶分开合并)
f_column([2:2:N],:)=low_frequency_column([1:T],:);
f_column([1:2:N-1],:)=high_frequency_column([1:T],:);
%map=gray(256);
%subplot(1,2,2);image(uint8(f_column));colormap(map);title('列反变换图像');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -