拉普拉斯金字塔重构图像matlab代码
时间: 2023-11-23 22:08:17 浏览: 133
以下是拉普拉斯金字塔重构图像的Matlab代码:
```
clc
clear
I=im2double(imread('three.png'));
num=4;
Gau=cell(num,1);
N=1;
Gau{N}=I;
h=fspecial('gaussian',[5,5],64);
for N=2:num
temp=imfilter(Gau{N-1},h,'conv','same','replicate');
Gau{N}=temp(1:2:end,1:2:end,:);
end
temp=Gau{size(Gau,1)};
%将残差放入拉普拉斯金字塔当中
laplas=cell(num-1,1);
for index=num-1:-1:1
temp=imresize(Gau{index+1},[size(Gau{index},1),size(Gau{index},2)],'bilinear');%上采样构造拉普拉斯金字塔
temp=imfilter(temp,h,'conv','same','replicate');
laplas{index}=Gau{index}-temp;
end
%利用拉普拉斯金字塔重构
img=Gau{N};
for index2=N:-1:2
temp=imresize(Gau{index2},[size(Gau{index2-1},1),size(Gau{index2-1},2)],'bilinear');
temp=imfilter(temp,h,'conv','same','replicate');
img=temp+laplas{index2-1};
end
imshow([I img]);
```
该代码实现了拉普拉斯金字塔重构图像的过程,包括构造高斯金字塔、构造拉普拉斯金字塔、利用拉普拉斯金字塔重构图像等步骤。
阅读全文