感谢作者总结,原文地址:http://blog.sina.com.cn/s/blog_6f57a7150100o5ef.html

如对作者造成任何不便,请联系我删除。

先上个简单的示例,看MATLAB中拉普拉斯滤波器是如何实现的:

令原图f=magic(3)

f =
     8     1     6
     3     5     7
     4     9     2

掩膜采用标准Laplacian掩膜:w=fspecial('laplacian',0)

w =
     0     1     0
     1    -4     1
     0     1     0

n=imfilter(f,w,'replicate');默认参数为'same',结果为:

n =
   -12    16    -4
     8     0    -8
     4   -16    12

采用'full'参数,n=imfilter(f,w,'replicate','full');结果为:

n =
     0    -7    12    -5     0
    -5   -12    16    -4     1
     6     8     0    -8    -6
    -1     4   -16    12     5
     0     5   -12     7     0

=========

实现过程:

①模板旋转180度(和原来一样,因为是对称的模板)

w' =
     0     1     0
     1    -4     1
     0     1     0

②图像边界填充,这里采用'replicate'方式:

>> k=padarray(m,[2 2],'replicate')
k =
     8     8     8     1     6     6     6
     8     8     8     1     6     6     6
     8     8     8     1     6     6     6
     3     3     3     5     7     7     7
     4     4     4     9     2     2     2
     4     4     4     9     2     2     2
     4     4     4     9     2     2     2

(黄色背景为原始图像)

③进行卷积运算:

……(逐步计算,直至模板全部移过图像)

④去除边界,得到结果:

上述即用laplacian滤波模板进行图像滤波的过程(实际上是一个空间卷积操作)。

以一幅uint8类灰度图像为例,原图:


直接使用laplacian滤波模板滤波:

>> f=imread('moon.tif');
>> w=fspecial('laplacian',0)
>> g1=imfilter(f,w,'replicate');

>> imshow(g1)

效果并不理想,因为原图是一幅uint8类图像,输出结果仍为uint8类,所有像素均为正值,而拉普拉斯滤波模板中存在负值,变换结果中的所有负值被截掉了。
解决此问题,须先进行类型变换:

f2=im2double(f);  %将f转换为归一化的double类图像

然后再进行滤波:

>> g2=imfilter(f2,w,'replicate');
>> imshow(g2,[])


此图像即含有负值的滤波结果,相比于原图,丢失了一些灰度色调,故还需用原图减去此滤波结果(以还原失去的灰度色调):

>> g=f2-g2;figure,imshow(g)

比原图清晰了很多。

另外,使用考虑了对角线元素的中心为8的拉普拉斯算子还可以获得更为清晰的图像:

>> w8=[1 1 1;1 -8 1;1 1 1]

w8 =
     1     1     1
     1    -8     1
     1     1     1
>> g8=f-imfilter(f,w8,'replicate');
>> figure,imshow(g8)

===========

拉普拉斯算子的数学定义:

式(2)为式(1)的数字近似,式(3)中g(x,y)为目标图像,f(x,y)为原始图像。c为1(当掩膜中心系数为正时),c为-1(当掩膜中心系数为负时)

由于laplacian算子是微分操作符,所以它会使图像锐化,并使常量区域为0。

后记:关键点是模板的选取。

拉普拉斯滤波实现图像增强相关推荐

  1. 用matlab进行拉普拉斯滤波,matlab拉普拉斯滤波器

    laplace(拉普拉斯)锐化 matlab 程序 部门: xxx 时间: xxx 整理范文,仅供参考,...高通滤波器可以看成是 1 减去相应低通滤 波器,从低通滤波器的性质可以看出,在...... ...

  2. 拉普拉斯图像增强C语言,拉普拉斯算子进行图像增强

    先上个简单的示例,看MATLAB中拉普拉斯滤波器是如何实现的: 令原图f=magic(3) f = 8 1 6 3 5 7 4 9 2 掩膜采用标准Laplacian掩膜:w=fspecial('la ...

  3. matlab做拉普拉斯曲线,Matlab 拉普拉斯滤波 以及 imfilter 详解(多图)

    Matlab 拉普拉斯滤波 以及 imfilter 详解(多图) 08-08栏目:技术 TAG:imfilter imfilter 代码: jhua.orgclc clear all A=imread ...

  4. matlab图像处理基本概念-滤波|图像分割|图像增强|边缘检测

    22.均值滤波  [+v.   matlab56沟通技术问题]  均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标象素为中心的周围8个像素,构成一 ...

  5. 拉普拉斯算子原理 图像增强

    数学基础 拉普拉斯算子,二阶微分线性算子,为什么上来就学二阶微分算子,前文说过,与一阶微分相比,二阶微分的边缘定位能力更强,锐化效果更好,所以我们来先学习二阶微分算子,使用二阶微分算子的基本方法是定义 ...

  6. 拉普拉斯算子原理 图像增强

    转自:https://blog.csdn.net/huang1024rui/article/details/46537205 数学基础 拉普拉斯算子,二阶微分线性算子,为什么上来就学二阶微分算子,前文 ...

  7. 数字图像处理第四章频率域滤波(低通滤波器、高通滤波器、拉普拉斯滤波、同态滤波器)

    本章节的主要内容具体包括:傅里叶变换的概念及处理的相关知识.频率域卷积概念.三种低通滤波器的原理及代码实现.三种高通滤波器的原理及代码实现.频率域拉普拉斯算法原理及实现.同态滤波器原理及代码实现. 4 ...

  8. 用matlab进行拉普拉斯滤波,matlab拉普拉斯算子锐化滤波

    一. 本文主要是在给出拉普拉斯锐化算子公式的情况下,在matlab上实现代码设计.拉普拉斯算子是最简单的各向同性微分算子,有几种常用的滤波模板,本文使用的是八邻域模板,如下所示 image.png 其 ...

  9. matlab 卷积 拉普拉斯滤波,卷积滤波和边缘检测

    图片的频率 首先说说图像频率的物理意义.图像可以看做是一个定义为二维平面上的信号,该信号的幅值对应于像素的灰度(对于彩色图像则是RGB三个分量),如果我们仅仅考虑图像上某一行像素,则可以将之视为一个定 ...

最新文章

  1. 表转换存储引擎的方法总结
  2. ssl双向认证和单向认证的区别
  3. webpack基础+webpack配置文件常用配置项介绍+webpack-dev-server
  4. pde lec 6 part 2
  5. MySQL 笔记2 -- MySQL 基础
  6. 使用Forms Authentication实现用户注册、登录 (三)用户实体替换
  7. 页面输出缓存[转载]
  8. 小米首部5G手机正式发布 海外营收将很快超过国内
  9. 右左法则解决复杂声明
  10. 编译并运行Java文件
  11. Windows XP操作系统自带工具应用详解(转)
  12. WSDL(Web服务描述语言)详细解析
  13. 【简单的四足机器人制作(基于STC15/LPC845)】
  14. 硬盘录像机数据恢复方法
  15. Ubuntu断电重启后出现recovering journal的问题
  16. win7系统下 安装anaconda时报错“failed to create menus”的解决方案
  17. ocr文字识别软件:Readiris Corporate 17 Mac中文版
  18. 关于XUL上的textbox中的persist属性使用
  19. 纯国产环境JAVA程序(Springboot + Mybatis + 达梦数据库)搭建
  20. windows下python运行的方法

热门文章

  1. ctfshow 摆烂杯web wp
  2. 学生表/课程表/教师表/成绩表-多表查
  3. Flutter关于IOSApp配置以及上架AppStore配置和IosApp上架第三方平台以及关于IOS微信Sdk配置
  4. 新手站长应该如何开始写文章?
  5. STM32开发项目:一些模拟电子开关的介绍与驱动
  6. 我爱天文 - 秒差距是时间单位还是距离单位?
  7. CoreBluetooth.framework基本使用
  8. 微星泰坦 GP68HX 评测 微星泰坦 GP68HX参数配置
  9. System.js详解
  10. 一条坎坷的保研路:北理、天大、南开、厦大、川大、支保