【图像处理与机器视觉】灰度变化与空间滤波

基础

空间域与变换域

空间域:认为是图像本身,对于空间域的操作就是对图像中的像素直接进行修改
变换域:变换系数处理,不直接对于图像的像素进行处理

邻域

图像中某点的邻域被认为是包含该点的小区域,也被称为窗口

空间滤波

邻域选择空间域中的一小块区域,对于邻域中的像素运用算子T,并在该位置产生一个输出;随后将邻域的原点移动到下一个位置,并且重复前面的过程,生成下一个位置的值,当邻域的大小为1*1的时候,输出像素只取决于输入像素,而与周边像素无关

灰度变换函数

(1)反转变换:s = (L-1) - r
r为输入图像像素,s为输出图像像素,[0,L-1]为图像的灰度集
作用:使黑白反转
(2)对数变换: s = c log ⁡ ( 1 + r ) s= c\log(1+r) s=clog(1+r)
c为常数,r>=0,使用对数变换可以让原图的灰度进行压缩,避免超出设备的限制,如图所示,将较低的灰度提高到了中间,同理还有其他变换函数也能起到相同或者相反的作用
在这里插入图片描述
(3)幂变换: s = c ⋅ r γ s=c\cdot r^\gamma s=crγ
gamma小于1的时候,提高了灰度级,gamma大于1时,降低了灰度级
(记住图片就好)
在这里插入图片描述

直方图处理(重要)

对于一个灰度级范围为[0,L-1]的数字图像,其直方图表示为 h ( r k ) = n k h(r_k) = n_k h(rk)=nk,其中rk代表着第k级灰度,nk是图像中处在该灰度级的像素个数
归一化: p ( r k ) = h ( r k ) / M N p(r_k)=h(r_k)/MN p(rk)=h(rk)/MN
p是灰度级在图像中出现的概率估计,所有分量加起来之和为1
在这里插入图片描述
从左至右分别为暗图片,两图片,低对比度图片,高对比度图片

直方图均衡

目的就是将聚集在一起的灰度值变得“平坦”得分布在所有灰度级上,从最终结果上来说可以认为增加了对比度,同时将过亮或者过暗的图片调整正常。
这里我们不对于直方图均衡的具体原理进行细究,如想了解清楚请查看此处:直方图均衡化原理
理想情况下,均衡后的连续函数会使所有灰度级的概率密度全部相等
在这里插入图片描述
以下为实际遇到时的处理:
(这里也可以跳转我之前做过的直方图均衡/匹配实验,内含matlab代码:https://blog.csdn.net/weixin_46876169/article/details/137008120?spm=1001.2014.3001.5501)
e.g.一幅图大小为64*64,其灰度级范围为[0,7],归一化的灰度分布如下表所示:
在这里插入图片描述
直方图均衡变换函数为: s k = T ( r k ) = ( L − 1 ) ∑ j = 0 k p r ( r j ) s_k = T(r_k)=(L-1)\sum\limits_{j=0}^kp_r(r_j) sk=T(rk)=(L1)j=0kpr(rj)
可以计算得到: s 0 = 7 × p r ( r 0 ) = 7 ⋅ 0.19 = 1.33 s_0 = 7 \times p_r(r_0) = 7 \cdot 0.19 = 1.33 s0=7×pr(r0)=70.19=1.33 s 1 = 7 p r ( r 0 ) + 7 p r ( r 1 ) = 3.08 s_1= 7p_r(r_0) + 7p_r(r_1) = 3.08 s1=7pr(r0)+7pr(r1)=3.08,同样有s2=4.55,s3=5.67,s4=6.23,s5=6.65,s6=6.86,s7=7.00
将这些小数进行取整到最近的整数:
在这里插入图片描述
通过这一组式子,我们可以得到映射关系,原本灰度级为0的像素映射到1,灰度级为1的像素映射到3,其他类似
在这里插入图片描述
我们可以发现,均衡后的直方图在亮度上整体有了提高,同时尽可能均匀的平铺在所有灰度级中

直方图匹配

有时候直方图均衡处理完的图片并不满足我们需要的效果,比如对于上图我们只想提高亮度,而不想提高其对比度,那么通过直方图均衡这样的方法就没法做到。此时我们可以选取一张我们希望的亮度与对比度的图片,使用直方图匹配的方法来将原直方图变为我们需要的样子。
这里我们仍然忽略繁杂的理论推导,直接来看一看具体的例子,假设变换对象仍然为原来的图片,新的参考图的直方图给在了图中:
在这里插入图片描述
(1)对于原图与参考图均进行直方图均衡:
在这里插入图片描述
在这里插入图片描述
将s的值与G(z)的值相对应,每个s取最接近的G(z)值,当s离两个G(z)值一样接近时,取较小的那个,最终可以得到s对应z的映射,再加上原本r到s的映射,最终就能得到r到z的映射
在这里插入图片描述
在这里插入图片描述
如此就可以得到目标的直方图,需要注意的是,映射完后原图的直方图各灰度级概率密度并不与目标图完全一致,而是指分布一致
在这里插入图片描述

空间滤波

滤波是指通过或拒绝一定范围内的频率分量,例如能够通过低频分量的滤波器叫做低通滤波器,最终效果可以对一幅图片进行模糊处理。
根据执行的操作可以分为:线性空间滤波器和非线性空间滤波器去
对于一个窗口为3x3的滤波器,其输出为各位置上的系数与对应像素值的乘积之和
如果期望图像中的像素变化为以该像素为中心的3x3邻域的平均灰度,可以使用 R = 1 9 ∑ i = 1 9 z i R = \frac{1}{9}\sum\limits_{i=1}^9z_i R=91i=19zi

平滑空间滤波

平滑滤波用于模糊处理和降低噪声
模糊处理经常用于预处理任务,可以去除图像中的一些噪声

平滑线性滤波器

可以归入低通滤波器,主要作用是降低噪声,去除图像中的不相关细节,但也可能导致边缘模糊或者由于灰度级数量不足导致的伪轮廓
在这里插入图片描述
加权平均滤波:
在这里插入图片描述

非线性滤波器

统计排序滤波器是一种非线性滤波器,通过滤波器中包围的图像中所含像素的排序来决定中心像素的值
例如:中值滤波器,将滤波器内灰度的中值代替滤波器中心的值,此外除了取中值,还可以取最大值(最大值滤波器),最小值(最小值滤波器)
中值滤波器对于处理脉冲噪声(椒盐噪声)非常有效

锐化空间滤波器

对于一阶微分和二阶微分的定义:
一阶微分:(1)在恒定区域为0(2)在斜坡或台阶的起点处非0(3)在斜坡上非0
二阶微分:(1)在恒定区域为0(2)在台阶或斜坡的起点处非0(3)在斜坡上为0
在这里插入图片描述

使用拉普拉斯算子进行图像锐化

拉普拉斯算子是一种各向同性微分算子,这种滤波器的响应与其以何方向作用在图像上无关。
对于两个变量的拉普拉斯算子,
∇ 2 f = ∂ 2 f ∂ x 2 + ∂ 2 f ∂ y 2 \nabla^2f=\frac{\partial^2f}{\partial x^2}+\frac{\partial^2f}{\partial y^2} 2f=x22f+y22f
将其以离散的形式表述,我们就可以得到:
在这里插入图片描述
对于y也是同理:
在这里插入图片描述
故最终可以得到:
在这里插入图片描述
需要注意的是,拉普拉斯算子所产生的是一种滤波,可以认为是一种滤镜,和原图进行叠加才能起到相应的作用:

当拉普拉斯算子的中心常数为负时,c=-1,否则c=1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/674937.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Linux基础】安装redis

【Linux基础】安装redis 文章目录 【Linux基础】安装redis1、安装redis步骤2、启动redis3、redis停止 1、安装redis步骤 创建文件夹存放软件目录 [rootlocalhost ~]# mkdir /sort将Redis安装包上传到Linux到soft目录 解压安装包 cd /soft tar -xvf redis-4.0.0.tar.gz -C /usr/…

高速开箱机如何更加高效、智能化

在科技飞速发展的背景下,物流自动化已成为行业发展的必然趋势。其中,高速开箱机以其高效、精准的特性,在物流自动化领域大放异彩,成为推动行业发展的强大动力。星派将深入探讨高速开箱机在物流自动化中的应用与前景,展…

变现 5w+,一个被严重低估的 AI 蓝海赛道,居然用这个免费的AI绘画工具就能做!

大家好,我是画画的小强,致力于分享各类的 AI 工具,包括 AI 绘画工具、AI 视频工具、AI 写作工具等等。 但单纯地为了学而学,是没有任何意义的。 这些 AI 工具,学会了,用起来,才能发挥出他们的…

就凭这张图,下订华为享界S9

文 | Auto芯球 作者 | 雷慢 冲啦!就在刚刚, 我们团队下订了一辆享界S9, 还琢磨买奔驰S级,宝马7系和奥迪A8的老板们, 是应该试试享界S9了, 至少先占个坑,8月底S9上市当天, 可以…

月入5000+?Midjourney制作小红书壁纸实现副业变现

一、制作步骤 使用Midjourney制作小红书壁纸的步骤比较简单,分为5步,其中最关键的步骤就是画出用户喜欢的壁纸。 1、绘画壁纸 在开始绘画之前,我们首先要确定好壁纸类型,小红书的壁纸类型有多种,包括剪纸类型、花草…

手机如何找回删除的视频?轻松有效的3个技巧分享!

无论是因为疏忽大意还是意外情况,视频被删除都是一个常见的问题,而视频作为一种重要的媒体形式,承载着我们的回忆和重要的信息,因此找回删除的视频具有重要的意义。该如何找回删除的视频呢?接下来,我们将详…

uniapp表格合并

最左边本来是三个td,但是要截图里面的效果,只需要rowspan"3" <tr><td rowspan"3" class"tdMoney1">A.2.8 经济来源</td><td class"tdMoney1" >A.2.8 经济1来源</td><td colspan"2"><…

4.21 Python实现将文件夹中的文件压缩

Python实现将文件夹中的文件压缩 可以使用 Python 的 shutil 和 os 模块来将文件夹 C:\Users\15640\Desktop\git\abc 中的所有文件打包成一个名为 abc.zip 的压缩包。 import shutil import os# 定义文件夹路径和压缩包名称 folder_path rC:\Users\15640\Desktop\git\abc zip_…

C语言Prim算法和Prim-Alternat找最小生成树

文章目录 1、用prim算法求最小生成树C语言Prim算法实现 2、用Prim-Alternate算法求最小生成树3、C语言Prim-Alternate算法实现 1、用prim算法求最小生成树 绿色线会标记选过的边 从v1当作起始点开始&#xff0c;可选择: (v1,v2)权值为6 &#xff08;v1,v3&#xff09;权值为3 &…

I P协议

IPv4首部 4个字节的32 bit值以下面的次序传输&#xff1a;首先是 0&#xff5e;7 bit&#xff0c;其次8&#xff5e;15 bit&#xff0c;然后1 6&#xff5e;23 bit&#xff0c;最后是24~31 bit。这种传输次序称作 big endian字节序。由于TCP/IP首部中所有的二进制整数在网络中传…

抖音直播统计、直播间无人互动直播效果软件--抖音大师!

抖音大师介绍 抖音大师是抖音直播统计、直播间无人互动直播效果软件&#xff0c;通过它&#xff0c;你可以快速添加直播互动效果&#xff01;软件使用C#开发&#xff0c;无论是内存占用还是执行效果都远比同行的效果高太多&#xff01;&#xff01;电脑所需性能大大降低&#x…

Day11:空间转换、动画

目标&#xff1a;使用 3d 空间转换、动画丰富网页元素的呈现方式。 一、空间转换 1、空间转换简介 空间&#xff1a;是从坐标轴角度定义的 X 、Y 和 Z 三条坐标轴构成了一个立体空间&#xff0c;Z 轴位置与视线方向相同空间转换也叫 3D 转换属性&#xff1a;transform 2、平移…

maybaits-plus新增拦截器动态修改sql与pageHelper结合的问题

需求&#xff1a; 对每个sql进行权限控制&#xff0c;判断用户是查询出来的数据 由于涉及到几十个sql的改造&#xff0c;都要增加这个条件&#xff0c;一个个改很麻烦&#xff0c;所以通过增加sql拦截器&#xff0c;给每个sql追加权限条件 以flowMapper.queryOverFlowPage为例&…

node版本的升级和降级

一、问题描述 在开发过程中&#xff0c;我们可能会遇到在A项目中用 node14 版本&#xff0c;而在B项目中要用 node16 版本&#xff0c;从而需要切换不同的 node 版本来开发项目。 二、安装 gnvm 1、在已经安装好 nodejs 的前提下&#xff0c;我们来安装 gnvm &#xf…

Linux[高级管理]——使用源码包编译安装Apache网站

&#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f468;‍&#x1f4bb;Linux高级管理专栏&#xff1a;点击&#xff01; ⏰️创作时间&#xff1a;2024年5月31日14点20分 &#x1f004;️文章质量&#xff1a;96分 在Linux系统上编译和安装Apache HTTP Server是…

基于Vue3的Uniapp实训项目|一家鲜花店

基于Vue的Uniapp实训指导项目 项目预览&#xff1a; 在这里插入图片描述 pages.json {"pages": [ //pages数组中第一项表示应用启动页&#xff0c;参考&#xff1a;https://uniapp.dcloud.io/collocation/pages{"path": "pages/index/index",&…

微信小程序蓝牙连接部分Android14调用wx.setBLEMTU协商低功耗最大传输单元失败解决方案(部分安卓14设置超过23就会报错)

1.解决方案的核心内容&#xff1a;第一次设置失败不要管&#xff0c;在complate函数里面继续往下连接&#xff0c;然后设置一个定时器每1秒钟在重新设置一次&#xff0c;肯定会成功的&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&am…

PS系统教程09

修复照片 修饰工具 污点修复画笔工具&#xff08;J&#xff09; 主要作用&#xff1a;去除一些污点或者不需要的 【&#xff1a;缩小】&#xff1a;放大 目标&#xff1a;去掉这两个点 修复画笔工具 也就是说我们要有取样点 选择修复画笔工具按住Alt键吸取周边相近颜色松开单机…

手把手教你使用O2OA(翱途v9)开发应用平台(1)-平台初始化

今天我们就来搭建O2OA服务&#xff0c;并初始化基础数据。 服务器安装启动 获取O2OA O2OA平台以及其所有源码&#xff0c;都是可以免费获取的&#xff0c;要获取可运行的O2OA平台&#xff0c;有三种方式&#xff1a; 1、容器化部署 2、从官网下载可运行版本 3、下载源码&…

YOLOv5改进 | 主干网络 | 将主干网络替换为轻量化的ShuffleNetv2【原理 + 完整代码】

&#x1f4a1;&#x1f4a1;&#x1f4a1;本专栏所有程序均经过测试&#xff0c;可成功执行&#x1f4a1;&#x1f4a1;&#x1f4a1; 目标检测是计算机视觉中一个重要的下游任务。对于边缘盒子的计算平台来说&#xff0c;一个大型模型很难实现实时检测的要求。基于一系列消融…