数字图像处理--微分算子为什么也是空间滤波器
前面我们提到,可以用一阶微分算子和二阶微分算子来增强图像,由于是增强了图像中的物体边缘轮廓,起到了锐化图像的效果,因此这些算子操作可用于图像锐化。
我们在前面的图像模糊中,介绍了使用平滑空间滤波器来模糊图像,那么用微分算子来锐化图像能不能也使用空间滤波器的形式呢?
我们分别选一个一阶微分算子和一个二阶微分算子作为示例:Sobel算子和Laplacian算子。首先,还是给出图像像素的8领域:
对于拉普拉斯算子,其二阶梯度表示是:
Laplacian=z8+z2+z6+z4−4∗z5Laplacian = z_8 + z_2 + z_6 + z_4 - 4 *z_5 Laplacian=z8+z2+z6+z4−4∗z5
如果我们把8领域都考虑进去,其可以转换成如下的形式:
Laplacian=0∗z1+1∗z2+0∗z3+1∗z4+(−4)∗z5+1∗z6+0∗z7+1∗z8+0∗z9\begin{aligned} Laplacian =& 0*z1 + 1*z2 + 0*z3 +\\& 1*z4 + (-4)*z5 + 1*z6+ \\ &0*z7 + 1*z8 + 0*z9 \end{aligned} Laplacian=0∗z1+1∗z2+0∗z3+1∗z4+(−4)∗z5+1∗z6+0∗z7+1∗z8+0∗z9
这和上面的式子是等价的。我们把上面的8领域像素的系数提取出来,形成一个系数矩阵,就是:
那么对图像实施拉普拉斯算子操作,实质上就是用这个系数矩阵与图像中的任意一点的领域区域矩阵进行矩阵点乘,然后求点乘后矩阵的和。写出公式就是:
g(x,y)=∑a=−nn∑b=−nnw(a,b)f(x+a,y+b)g(x,y)=\sum_{a=-n}^{n}\sum_{b=-n}^{n}w(a,b)f(x+a,y+b) g(x,y)=a=−n∑nb=−n∑nw(a,b)f(x+a,y+b)
其中w(a, b)就是上面的拉普拉斯算子矩阵。
我们注意到,这和前面文章中提到的空间滤波器形式是一模一样的。所以,像拉普拉斯算子这样的二阶微分算子,可以像平滑空间滤波器(图像降噪、图像模糊)那样,使用空间滤波器的形式,这为统一计算模型带来了极大方便。
同理,对于Sobel算子,其一阶梯度表示是:
S=∣(z7+2∗z8+z9)−(z1+2∗z2+z3)∣+∣(z3+2∗z6+z9)−(z1+2∗z4+z7)∣S=|(z_7+2*z_8+z_9)-(z_1+2*z_2+z_3)|+|(z_3+2*z_6+z_9)-(z_1+2*z_4+z_7)| S=∣(z7+2∗z8+z9)−(z1+2∗z2+z3)∣+∣(z3+2∗z6+z9)−(z1+2∗z4+z7)∣
由于这里用了绝对值,我们需要分开来:
Sobel=∣gx∣+∣gy∣gx=(z7+2∗z8+z9)−(z1+2∗z2+z3)gy=(z3+2∗z6+z9)−(z1+2∗z4+z7)Sobel = |gx|+|gy| \\ gx = (z_7+2*z_8+z_9)-(z_1+2*z_2+z_3)\\ gy = (z_3+2*z_6+z_9)-(z_1+2*z_4+z_7) Sobel=∣gx∣+∣gy∣gx=(z7+2∗z8+z9)−(z1+2∗z2+z3)gy=(z3+2∗z6+z9)−(z1+2∗z4+z7)
转换成等价形式:
gx=(−1)∗z1+(−2)∗z2+(−1)∗z3+0∗z4+0∗z5+0∗z6+1∗z7+2∗z8+1∗z9gy=(−1)∗z1+0∗z2+1∗z3+(−2)∗z4+0∗z5+2∗z6+(−1)∗z7+0∗z8+1∗z9\begin{aligned} gx =&(-1)*z_1 + (-2)*z_2 + (-1)*z_3+\\ &0*z_4 + 0*z_5 + 0*z_6 +\\ &1*z_7 + 2*z_8 + 1*z_9 \\ gy =& (-1)*z_1 + 0*z_2 + 1*z_3 + \\ &(-2)*z_4 + 0*z_5 + 2*z_6 + \\ &(-1)*z_7 + 0*z_8 + 1*z_9 \\ \end{aligned} gx=gy=(−1)∗z1+(−2)∗z2+(−1)∗z3+0∗z4+0∗z5+0∗z6+1∗z7+2∗z8+1∗z9(−1)∗z1+0∗z2+1∗z3+(−2)∗z4+0∗z5+2∗z6+(−1)∗z7+0∗z8+1∗z9
提取出系数矩阵就是:
gx=[−1−2−1000121],gy=[−101−202−101]gx=\begin{bmatrix} -1&-2&-1 \\ 0&0&0 \\ 1&2&1 \end{bmatrix},gy=\begin{bmatrix} -1&0&1 \\ -2&0&2 \\ -1&0&1 \end{bmatrix} gx=⎣⎡−101−202−101⎦⎤,gy=⎣⎡−1−2−1000121⎦⎤
由于使用了x方向和y方向梯度的绝对值的和来表示梯度幅值,因此Sobel算子需要使用2个这样的系数矩阵,也就是2个空间滤波器。
转载自:https://blog.csdn.net/saltriver/article/details/78990694
数字图像处理--微分算子为什么也是空间滤波器相关推荐
- 数字图像处理第五次作业——频域滤波器
目 录 一.基本概念及原理 1. 理想低通滤波器: 2. 巴特沃斯低通滤波器: 3. 高斯低通滤波器: 4. 高通滤波器: 5. 拉普拉斯高通滤波器: 6. Unmask高通滤波器: 二.实现过程和结 ...
- 【数字图像处理】四种常用的滤波器
数字图像处理 四种常用滤波器 数字图像处理 一.平滑滤波器 1.1 基本原理 1.2 作用 1.3 邻域加权平均实现方式 二.高斯滤波器 2.1 基本原理 2.2 特点 三.中值滤波器 3.1 基本原 ...
- 微分算子为什么也是空间滤波器
前面我们提到,可以用一阶微分算子和二阶微分算子来增强图像,由于是增强了图像中的物体边缘轮廓,起到了锐化图像的效果,因此这些算子操作可用于图像锐化. 我们在前面的图像模糊中,介绍了使用平滑空间滤波器来模 ...
- Python实现数字图像处理之5种彩色空间转换(单图+多图+视频)
本文主要运用用Python代码实现了5种彩色空间之间的转换! 具体而言,包括: 1)RGB → CMY: 2) CMY → RGB: 3) RGB → HSI: 4) HSI → RGB: 5) ...
- 数字图像处理学习笔记(三)——空间分辨率和灰度分辨率、等偏爱曲线
数字图像处理(Digital Image Processing)是通过计算机对图像进行去除噪声.增强.复原.分割.提取特征等处理的方法和技术.本专栏将以学习笔记形式对数字图像处理的重点基础知识进行总结 ...
- 数字图像处理第二章——空间滤波
数字图像处理第二章 数字图像处理---灰度变换与空间滤波 (四)空间滤波 4.1线性空间滤波 4.1.1 相关 4.1.2 卷积 4.1.3 imfilter函数 4.2 非线性空间滤波 (五)图像处 ...
- 冈萨雷斯《数字图像处理》学习总结及感悟:第一章 绪论 百闻不如一见
☞ ░ 前往老猿Python博文目录 https://blog.csdn.net/LaoYuanPython ░ 一.引言 好几月前开始自学OpenCV-Python,但老猿以前没接触过图像基础知识, ...
- 数字图像处理杂项-同态滤波
内容简介 同态滤波原理 同态滤波python实现 同态滤波调参技巧 同态滤波原理 这里先看讲义介绍如下: 首先上面的分析一共有三点需要注意: 取对数,目的是基于我们假定的图像模型将低频和高频信号进行分 ...
- 数字图像处理基础之--像素间的关系(邻接/连通)
图像的像素的意义 一幅图像,经过取样和量化之后就可以得到数字图像.数字图像在存储时,都是由单一的像素保存在存储设备中.像素保存顺序是与像素在数字图片中原本所处在的物理位置相关,那么就要了解像素之间的一 ...
最新文章
- 使用二维码识别技术的好处_人脸识别技术什么场景都能使用吗?
- Spring学习笔记(三)
- django 学习 (一)
- matlab玫瑰,网上收到的用matlab画玫瑰花的代码怎么不行啊,报告错误,求大神
- 远程连接Ubuntu服务器
- “杀死” APP 的留白设计!
- MySQL数据库(八)
- 自然语言处理-错字识别(基于Python)kenlm、pycorrector
- 超级详细的手把手教你使用Lighthouse更好推动项目性能优化,性能指标详解,优化方法,需要关注指标分析
- walsh64码 matlab,实验7 Walsh码及单用户CDMA系统直接序列扩频仿真
- 有趣的游戏-猜黑白纸
- Kotlin和Swift语言在Redmonk榜上排名大幅提升
- 怎么写出计算机SCI论文
- 计算机网络-----TCP三次握手相关面试题扩展
- 互联网的战争--腾讯与360
- Python基础与拾遗2:Python中的字符串与字符串格式化
- 因特尔又要加入手机芯片市场了
- android http上传文件
- LightCNN核心点解析
- 2021-ICPC银川站赛后总结
热门文章
- 容器编排技术 -- Kubernetes Annotations
- 消息队列面试 - 如何保证消息的顺序性?
- 【苹果cms10 Maccmsv10 站群深度定制版 开发日志】 数据渲染模块
- maccmsv10 苹果cms10 站群扩展 自用版
- 比特飞解决方案大汇总,你的贴身家教
- “mysql数据库表锁死,既打不开,也关不上”的解决方案
- C#LeetCode刷题之#125-验证回文串(Valid Palindrome)
- mysql开启profiling
- python sanic_如何使用Python和Sanic使代码快速异步
- 数据科学家 数据工程师_发展数据科学家和工程师