1、高斯金字塔计算步骤
(1)对第 iii 层图像进行高斯内核卷积;
(2)将所有偶数行和列去除(下采样),得到第 i+1i+1i+1 层图像;
(3)对原始图像不停迭代以上步骤就能得到整个金字塔。
2、拉普拉斯金字塔计算步骤
(1)将第 iii 层图像在每个方向扩大为原来的两倍(上采样),新增的行和列以0填充;
(2)使用先前同样的内核(乘以4)与放大后的图像卷积,获得“新增像素”的近似值,得到第 i−1i-1i−1 层图像;
(3)与高斯金字塔第同层次图像相减,就是图像在缩小和放大整个过程中减少的信息,称为拉普拉斯残差金字塔。
3、Matlab程序实现

close all
clear
clcimg=imread('lena.png');
img_gray=rgb2gray(img);
img_filter=double(img_gray);
%% 设置金字塔层数:p,高斯金字塔元胞数组为gausPyramid,拉普拉斯金字塔元胞数组为LaplPyramid
p=4;
gausPyramid=cell(1,p);
LaplPyramid=gausPyramid;%% 5*5高斯核,sigma=1
kernel=fspecial('gaussian',5,1);
% 高斯核乘以4(亮度守恒)
kernel1=4.*kernel;%% 计算gausPyramid和LaplPyramid
[m,n]=size(img_filter);
gausPyramid(1)=mat2cell(img_filter,m,n);
for i=2:p        %% 高斯金字塔% 滤波img_filter1=filter2(kernel,img_filter,'same');% 下采样:去掉偶数行、列img_filter1(2:2:end,:)=[];img_filter1(:,2:2:end)=[];    [m,n]=size(img_filter1);gausPyramid(i)=mat2cell(img_filter1,m,n);%% 拉普拉斯金字塔% 上采样:新增全零行、列img_filter2=zeros(2*m,2*n);img_filter2(1:2:2*m,1:2:2*n)=img_filter1(1:m,1:n);% 滤波img_filter2=filter2(kernel1,img_filter2,'same');img_filter2=img_filter-img_filter2;LaplPyramid(i-1)=mat2cell(img_filter2,2*m,2*n);img_filter=img_filter1;
end
LaplPyramid(p)=gausPyramid(p);%% 显示金字塔,把元胞金字塔统计到一个数组中
img_gaus=cell2mat(gausPyramid(1));
[r,~]=size(img_gaus);
img_lapl=cell2mat(LaplPyramid(1));
[r1,~]=size(img_lapl);
for i=2:p%% 高斯金字塔img_filter=cell2mat(gausPyramid(i));[m,~]=size(img_filter);% 在第一行前面补(r-m)行全255行,10列全255列,与最大的图像行对齐img_filter=padarray(img_filter,[r-m 10],255,'pre');img_gaus=[img_gaus img_filter];%% 拉普拉斯金字塔img_filter=cell2mat(LaplPyramid(i));[m,~]=size(img_filter);% 在第一行前面补(r-m)行全255行,10列全255列,与最大的图像行对齐img_filter=padarray(img_filter,[r1-m 10],255,'pre');img_lapl=[img_lapl img_filter];
end
figure('Name','gausPyramid');
imshow(uint8(img_gaus));
figure('Name','LaplPyramid');
imshow(uint8(abs(img_lapl)));

4、结果如图所示
(1)高斯金字塔

(2)拉普拉斯金字塔

注:拉普拉斯金字塔与《图像工程》(第4版)中的效果图不太一样,差别的源头可能出在原始图像“lena.png”的数据上!

高斯金字塔及拉普拉斯金字塔的Matlab实现相关推荐

  1. 高斯金字塔和拉普拉斯金字塔实现图像融合

    相关笔记 高斯金字塔: repeat{ 1.对图像进行高斯滤波(平滑化): 2.抛除偶数行和列,依次缩小图片尺寸. // 每进行一轮循环,得到一层金字塔,每层金字塔图像大小都是上一层的一半. // 该 ...

  2. 高斯拉普拉斯 java_基于能量匹配的高斯金字塔与拉普拉斯金字塔图像融合

    利用拉普拉斯对高频信息的保留,重建出原始图像 操作过程如下 对于两张图像 可以看到两张同样的图片一个脸部模糊一个除了脸其他地方模糊,现在我们需要通过局部能量匹配的融合方法对图像进行增强,即基于能量特征 ...

  3. OpenCV中的图像金字塔(高斯金字塔、拉普拉斯金字塔)

    最近在看关于数字图像的知识点,目前在图像金字塔部分,实在是懒得用手作笔记了,就以其中比较出名的"高斯金字塔"和"拉普拉斯金字塔"为例,基于OpenCV的源代码作 ...

  4. python金字塔_高斯金字塔与拉普拉斯金字塔的原理与python构建

    高斯金字塔和拉普拉斯金字塔[1]在图像相关领域应用广泛,尤其是图像融合和图像分割方面.本文从理论和opencv实现两个方面对两种金字塔进行了介绍,并给出了二者的视觉效果. 1.高斯金字塔 在计算机视觉 ...

  5. 图像金字塔:高斯金字塔vs拉普拉斯金字塔

    文章目录 一.图像金字塔的定义 二.高斯金字塔的计算 三.拉普拉斯金字塔的计算 一.图像金字塔的定义 图像金字塔是图像中多尺度表达的一种,用多分辨率来解释图像. 金字塔的底部是待处理图像的高分辨率表示 ...

  6. 【OpenCV新手教程之十三】OpenCV图像金字塔:高斯金字塔、拉普拉斯金字塔与图片尺寸缩放...

    本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/26157633 作者:毛星云(浅墨) ...

  7. 【OpenCV入门教程之十三】OpenCV图像金字塔:高斯金字塔、拉普拉斯金字塔与图片尺寸缩放

    本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/26157633 作者:毛星云(浅墨) ...

  8. opencv学习-高斯金字塔和拉普拉斯金字塔

    图像金字塔 一个图像金字塔是由一系列的图像组成,最底下一张是图像尺寸最大,最上方的图像尺寸最小,从空间上从上向下看就像一个古代的金字塔. 金字塔的底部是待处理图像的高分辨率表示,而顶部是低分辨率的近似 ...

  9. 【笔记】高斯金字塔和拉普拉斯金字塔:高斯金字塔持续的下采样让图片变小,像素变少,特征模糊;拉普拉斯金字塔以记录恢复原图过程中的上采样后图片与原始图片的损失,力图还原真实图片

    高斯金字塔和拉普拉斯金字塔应用在图像融合和图像分割方面. def laplacian(gaussian_pyramid, up_times=5):laplacian_pyramid = [gaussi ...

  10. 图像金字塔、高斯金字塔、拉普拉斯金字塔是怎么回事?附利用拉普拉斯金字塔和高斯金字塔重构原图的Python-OpenCV代码

    图像金字塔是通过多个分辨率表示图像的一种有效且简单的结构. 一个图像金字塔是一系列以金字塔形状排列的分辨率逐步降低的图像.图像金字塔的底部是待处理图像的高分辨率表示,而顶部是低分辨率表示. 图像金字塔 ...

最新文章

  1. python 中sys.stdout.write 和 print sys.stdout的区别(转)
  2. Maxon Cinema 4D Studio S22.114中文版
  3. shell脚本例子集锦
  4. C++Addition rule of probabilities概率加法法则算法(附完整源码)
  5. stm32f4 输出pwm波_stm32的pwm输出代码及注释
  6. Java“地铁”表(JavaFX)
  7. 自动化安装DHCP配置脚本
  8. react-踩坑记录——swiper报错!
  9. Mac下Tomcat下载及使用
  10. java 员工管理系统
  11. 深入理解golang框架Gin(一)---->Gin简介以及安装使用
  12. 强智教务系统验证码识别 OpenCV
  13. 力扣(142.1002)补9.17
  14. Java找出游戏的获胜者leetcode_1823
  15. 计算机三级应该学什么条件,计算机三级报名条件
  16. win7 共享 win10 打印机
  17. android平台应用GPIO模拟IR控制车载DTV
  18. PMP可以自学报考吗
  19. 测试RADIUS服务器
  20. 实锤!阿里集团将剥离阿里云 100% 股权

热门文章

  1. Vue中关于scoped以及scoped样式穿透的原理与使用详解
  2. java long转object_Java 类型转换以及Object转成其他类型
  3. java 文件夹打包成zip(带有嵌套的那种文件夹)
  4. 如何提升应届生职场竞争力
  5. Mesmi-Talk专访|MixLab无界社区创始人 Shadow
  6. mpstat——系统调优
  7. Scala 中的偏函数
  8. Self-supervised Learning: Generative or Contrastive
  9. centos 7中NGINX负载均衡(最详细)
  10. 解决未找到命令,环境变量错误