您好、欢迎来到现金彩票网!
当前位置:刘伯温论坛 > 图像几何学 >

数字图像处理的python实践(9)——图像锐化

发布时间:2019-07-07 10:14 来源:未知 编辑:admin

  图像锐化是和平滑相反的操作,目的是为了使模糊的图像变得清晰。既然是相反的目的,那么操作应该也是相反的,平滑使用的是图像邻域的加权求和或者是积分运算,而锐化则是使用求导数(梯度)或有限差分来实现。

  梯度的幅值作为变化率的度量,其值如下。为什么要求梯度的幅值?想一下平滑的处理思路,最简单的平均平滑,在简单的一维情况下就是就某个位置上的数值替换成基于这个位置的邻域的积分值;而积分的逆变换就是微分,也就是将该位置的数值替换成这个位置的效斜率。所以二维情况下,就是将梯度幅值的值作为新的值。

  而在实际应用中,经常被采用的是另一种近似梯度——Robert交叉梯度。可以将第一项和第二项都用模板的形式展示,如下所示。

  使用模板参与计算的方法和前面一致,只是根据我们的习惯,更偏向于采用技术尺寸的模板。所以有一种计算Sobel梯度的Sobel模板更加常用。我看的书中也没有关于Sobel梯度的推导,百度了一下也似乎没看到有人怎么详细的写。所以就自己推了一下。基本的思想和推导Robert交叉梯度是相同的,都是用绝对值的和来代替平方和开方,减少计算量。区别在于将2x2的模板扩张成3x3,很直观的:

  接下来我们试试将我们推到得到的Sobel模板,用于一张相对简单的图片来看看效果。为了计算方便,我们可以直接用前面写的一些函数拿来,然后修改其中的滤波模板,就可以达到效果。注意边界填充的方式,之前我们讲到,平滑的目的是为了消除噪声而不是突出边缘,所以各种各样的填充方法都可以尝试,影响不大;但是现在是为了突出图像中有意义的边缘,所以当我们在边界是做全0填充时,很有可能填充的部分和图像的边界就形成了变化剧烈的边缘,进而较大的梯度幅值在我们调整灰度范围时,将真正的图像中有意义的边缘的数值范围压缩到很小的范围,导致图像不清晰。所以最好要使用重复填充或者是镜像填充。

  注意一下,因为我们的模板中含有负数,而图像中的像素点的数值类型是uint8,在相乘时很可能会发生截断。所以首先要确保先将图像中的像素点的数值类型在与模板相乘时转化成整数型,或者是在读取图像时做一下设定如下:

  然后计算完的数值,有可能大于0也有可能小于0,我们关心的是绝对值的大小所以可以取绝对值。最后需要将数值的范围调整到0-255之间即可。实现的代码如下:

  记得在一维微分的锐化中,我们对响应都取了绝对值,这意味着滤波模板与图像图像像素的计算值,绝对值相同的正值和负值表示相同的响应,所以也等同于使用下面的模板。

  然后来分析模板的结构。所谓模板的结构,例如W1,模板如果旋转90度,实际上还是同一个模板;而Sobel算子,旋转90度会变成一组的另一个算子,这就对应了,一个水平一个竖直的特性。那么拉普拉斯算子,既然旋转90度等于自身,也就说明它对接近水平和接近竖直方向的边缘都有很好的加强。更进一步,我们构造对于45度旋转各向同性的滤波器如下:

  计算的代码和上面的一致,只是模板修改了一下下。但从结果中,看到效果并不好,甚至非常的模糊,这是因为我第一次实践使用的图片是素描作品,图像比较粗糙,不适合用来做这种操作。

  用回之前的动漫人物,处理的结果如下。可以看到,大致勾画出了人物的边缘,是比较准确有效的,其中,第二幅图和第三幅图都比第一幅图效果要好,是因为它们俩对于倾斜的45度走向的四个方向的边缘的捕捉能力要强于主要突出水平和竖直的第一种滤波模板。

  一阶导数和二阶导数都有锐化图像,突出边缘的作用。区别可以归纳成三个:第一,一阶导数通常会产生较宽的边缘;第二,二阶导数对于阶跃性边缘中心产生零交叉,而对屋顶状的边缘,二阶导数取极值;第三,二阶导数对细节有较强的响应,如细线和孤立噪声点。

  一、实验目的1、掌握频率域滤波的基本概念和常用方法;2、利用MATLAB进行频率域滤波,观察图像平滑和图像锐化的效果,加深对频率域滤波的理解;3、掌握图像FFT变换与DCT变换后进行频率域滤波的不同;...博文来自:Irene_zll的博客

  梯度算子•   梯度通过一个二维列向量来定义•   向量的模值实践中通常称为梯度图像。 •考虑一个3x3的图像区域,z代表灰度级,上式在点z5的f值可用数字方式近似。•微分滤波器模板系数设计✓Rob...博文来自:cyf的博客

  本文是博主个人学习数字图像处理整理知识点所用,如有错误希望得到大家指点一、图像拉普拉斯锐化模板:四方向模板:Laplace1=[0-10;-14-1;0-10]                    ...博文来自:杨氏计算机知识整理

  图像边缘锐化基本方法锐化处理可以用空间微分来完成。微分运算梯度锐化边缘检测通常,边缘上的灰度值变化平缓,而边缘两侧灰度值变化较快,图像的边缘一般指在局部不连续的图像特征,一般是局部亮度变化最显著的部分...博文来自:dzm123lalala的博客

  相关原理:1、频率提升——将原图像与边缘信息加权;2、高频增强——改变滤波模板直接实现边缘增强;3、一阶算子具备梯度方向信息,但是对丰富的高频纹理信息不敏感,适合于需要对边缘后续处理的应用;4、二阶算...博文来自:tan_clin

  冈萨雷斯 数字图像处理(第三版)matlab代码 图3.38 拉普拉斯算子使图像锐化(月球北极的模糊图像、未标定的拉普拉斯滤波,标定的拉普拉斯及锐化后的图像)

  该程序是用c#语言编写的用于图像基本处理的软件,包括有图像放大缩小、空间域平滑、直方图修正、锐化。频率增强。边界提取等操作。

  一、实例说明:    锐化效果主要是增加图像的亮度,增强图像的鲜艳感。本实例将实现使一幅图像锐化显示,可以通过菜单显示锐化图像,如下图所示。二、关键技术说明:    锐化算法主要是指通过制定像素加上其...博文来自:Cche的博客

  拉普拉斯锐化法  什么是拉普拉斯算子?  在图像锐化增强中,我们希望找到一种各向同性的边缘检测算子,这个算子就是拉普拉斯算子,该算子及其对f(x,y)的作用是      由一维信号的锐化公式可得到二维...博文来自:cXiao_yue的博客

  python作为简单高效又很强大的一门编程语言,scikit-image是python中处理图像的一个库,对大多数的图像处理算法进行了封装,用户只需调用相关的接口即可实现想要的效果。所以,本章节...博文来自:芥末酱-

  边缘检测我们之前讲边缘检测的时候讲到了一阶导和二阶导,理想边缘的像素值是跳变的,而斜坡边缘的像素值是渐变的。我们在求一阶导的时候导数值大的地方可以看做边缘;若是对于斜坡边缘,我们不想得到一长条边缘,而...博文来自:shanwenkang的博客

  目录1边缘检测的基本原理2边缘检测算子分类3梯度3.1图像梯度3.2梯度算子4Roberts算子4.1基本原理4.2代码示例5Prewitt算子5.1基本原理5.2代码示例6Sobel算子6.1基本原...博文来自:在水一方xym的博客

  滤波这一概念可以结合数字信号处理这一领域中的滤波。而在数字图像处理中滤波可以分为空间域滤波和频率域滤波。这篇博文主要来学习下空间域滤波。空间域滤波机理*空间滤波器由一个邻域(典型的是一个较小的矩形)构...博文来自:。

  针对遥感数字图像处理中的具体问题,《遥感数字图像处理 实践与操作/高等学校教材》综合遥感原理和数字图像处理的理论知识,借助遥感软件进行系统的实践训练,使读者掌握遥感数字图像处理的基本原理及操作过程,为利用遥感数据解决相关科学研究与业务应用...

  这个是图像处理源代码!但是由于所属分类没有相关分类,只能填写了机器学习!

  【步步为营】尝试亲手编写数字图像处理软件的乐趣,构建属于你的MagicHouse 【循序渐进】逐层探秘数字图像处理算法的设计精髓,提供独一无二的丰富代码资源 【全新升级】国内唯一涉及图像加密算法设计与应用开发的专业书籍,同时最新增补有...

  相关数字图像处理的函数及效果图,锐化,图像增强等待。适合matlab初学者。

  第一部分:三种低通滤波器实验一:理想低通滤波1.1实验原理高通滤波是常见的频域增强的方法之一,因为图像的边缘对应于高频分量,所以要锐化图像可以使用高通滤波器。二维理想高通滤波器的传递函数为:1.2实验...博文来自:jersonzhao的博客

  该系列文章是讲解PythonOpenCV图像处理知识,前期主要讲解图像入门、OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子、图像增强技术、图像分割等,后期结合深度学习研究图像识别、...博文来自:杨秀璋的专栏

  帐号相关流程注册范围n企业n政府n媒体n其他组织换句话讲就是不让个人开发者注册。 :)填写企业信息不能使用和之前的公众号账户相同的邮箱,也就是说小程序是和微信公众号一个层级的。填写公司机构信息,对公账...博文来自:小雨同学的技术博客

  jquery/js实现一个网页同时调用多个倒计时(最新的)nn最近需要网页添加多个倒计时. 查阅网络,基本上都是千遍一律的不好用. 自己按需写了个.希望对大家有用. 有用请赞一个哦!nnnn//jsn...博文来自:Websites

  command窗口是命令窗口,即为sqplus窗口,有命令提示符,识别sqlplus命令,基本的命令都可以执行nsql仅可执行DDL、select、DML等...博文来自:Ape55的博客

  对象的创建和销毁在一定程度上会消耗系统的资源,虽然jvm的性能在近几年已经得到了很大的提高,对于多数对象来说,没有必要利用对象池技术来进行对象的创建和管理。但是对于有些对象来说,其创建的代价还是比较昂...博文来自:赶路人儿

  扫二维码关注,获取更多技术分享nnn 本文承接之前发布的博客《 微信支付V3微信公众号支付PHP教程/thinkPHP5公众号支付》必须阅读上篇文章后才可以阅读这篇文章。由于最近一段时间工作比较忙,...博文来自:Marswill

  记得很早以前公司项目中添加过移动支付这一块, 包括微信,支付宝,银联等第三方的整合。 但是后来懒于总结就没留下什么, 最近公司项目打算添加,所以打算简单总结一下,记上一笔以备将来使用。 毕竟第三方的支...博文来自:samuelnotes的专栏

  本篇文章是根据我的上篇博客,给出的改进版,由于时间有限,仅做了一个简单的优化。相关文章:将excel导入数据库2018年4月1日,新增下载地址链接:点击打开源码下载地址十分抱歉,这个链接地址没有在这篇...博文来自:Lynn_Blog

  最近比较有空,大四出来实习几个月了,作为实习狗的我,被叫去研究Docker了,汗汗!nnDocker的三大核心概念:镜像、容器、仓库n镜像:类似虚拟机的镜像、用俗话说就是安装文件。n容器:类似一个轻量...博文来自:我走小路的博客

  baidu_41902768:[reply]weixin_42727069[/reply] 这个是我之前自己爬的一个宅男网站(你懂的)来着,有段时间没有测试估计不行了。但思路没问题,只要加密没那么复杂,稍微调整一下都是可以爬的。

http://airgomusic.com/tuxiangjihexue/543.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有