Python——通过统计图像像素值初步分析图像噪声类型

图像噪声是指图像中不随真实场景变化而变化的随机干扰。噪声会影响图像的质量,因此需要对其进行去噪处理。

目录

  • 一、图像噪声
    • 1.1 噪声类型
    • 1.2 结合峰度和偏度判断噪声
      • 1.2.1 峰度和偏度
      • 1.2.2 常见噪声的峰度和偏度
  • 二、代码
  • 三、测试结果
  • 四、总结

一、图像噪声

图像的像素值统计是指对图像中所有像素值进行统计分析,包括均值、方差、峰度、偏度等。这些统计量可以反映图像的整体特征,也能够用来判断噪声的类型。

1.1 噪声类型

根据均值和方差的不同组合,可以将噪声分为以下几种类型:

均值为零、方差为常数的噪声,称为高斯噪声。高斯噪声是一种常见的噪声类型,其特征是噪声分布符合高斯分布。

均值为零、方差随空间位置变化的噪声,称为高斯白噪声。高斯白噪声是高斯噪声的一种特殊形式,其特征是噪声在空间上是均匀分布的。

均值不为零、方差为常数的噪声,称为均值偏移高斯噪声。均值偏移高斯噪声的特征是噪声在均值上有一个固定的偏差。

均值不为零、方差随空间位置变化的噪声,称为均值偏移高斯白噪声。均值偏移高斯白噪声是均值偏移高斯噪声的一种特殊形式,其特征是噪声在空间上是均匀分布的。

通过计算图像的均值和方差,可以初步判断噪声的类型。例如,如果图像的均值为零、方差为常数,则该图像可能受到高斯噪声的污染。

1.2 结合峰度和偏度判断噪声

仅仅根据均值和方差还不能完全确定噪声的类型,还需要结合其他特征进行判断。例如,可以通过计算噪声的峰度和偏度来进一步判断噪声的类型。

以下是一些常用的图像噪声类型判断方法:

均值和方差:如果均值为零、方差为常数,则可能是高斯噪声;如果均值为零、方差随空间位置变化,则可能是高斯白噪声;如果均值不为零、方差为常数,则可能是均值偏移高斯噪声;如果均值不为零、方差随空间位置变化,则可能是均值偏移高斯白噪声。

峰度和偏度:如果峰度和偏度均接近于零,则可能是高斯噪声;如果峰度和偏度均不为零,则可能是其他噪声类型。

直方图:如果直方图呈现出高斯分布,则可能是高斯噪声;如果直方图呈现出其他分布,则可能是其他噪声类型。

1.2.1 峰度和偏度

噪声的峰度和偏度是噪声的两个重要特征,可以用来描述噪声的分布形状。

峰度(Kurtosis)是指噪声分布尾部的形状。峰度越大,噪声分布尾部越厚,越容易出现极端值。

偏度(Skewness)是指噪声分布对称性的度量。偏度越大,噪声分布越不对称,越容易出现偏离均值的值。

噪声的峰度和偏度可以通过以下公式计算:
在这里插入图片描述
其中xi表示噪声的每个值,μ 表示噪声的均值,σ 表示噪声的标准差。

噪声的峰度和偏度可以通过直方图来直观地观察。如果直方图呈现出高斯分布,则噪声的峰度和偏度均接近于零。如果直方图呈现出其他分布,则噪声的峰度和偏度可能不为零。

1.2.2 常见噪声的峰度和偏度

高斯噪声:峰度接近于 3,偏度接近于 0。

均值偏移高斯噪声:峰度接近于 3,偏度接近于均值偏移量。

拉普拉斯噪声:峰度为 3.69,偏度为 1.58。

指数噪声:峰度为 0,偏度为 0。

二、代码

使用代码,只需要修改导入图片路径即可,具体代码如下:

import numpy as np
import matplotlib.pyplot as plt
import cv2def noise_type(img):"""判断图像的噪声类型Args:img: 图像Returns:噪声类型"""# 计算图像的均值和方差img_mean = np.mean(img)img_var = np.var(img)print("图像均值为:",img_mean)print("图像方差为:",img_var)# 计算图像的峰度和偏度img_kurtosis = np.mean((img - img_mean)**4) / (img_var**2)img_skewness = np.mean((img - img_mean)**3) / (img_var**1.5)print("图像的峰度为",img_kurtosis)print("图像的偏度为", img_skewness)# 判断噪声类型if img_mean == 0 and img_var == img_var.max():return "高斯白噪声"elif img_mean != 0 and img_var == img_var.max():return "均值偏移高斯白噪声"elif img_kurtosis == 3 and img_skewness == 0:return "高斯噪声"elif img_kurtosis == 3.69 and img_skewness == 1.58:return "拉普拉斯噪声"elif img_kurtosis == 0 and img_skewness == 0:return "指数噪声"else:return "其他噪声"def plot_hist(img):"""绘制图像直方图Args:img: 图像"""plt.hist(img, bins=256)plt.show()if __name__ == "__main__":# 读取图像img = cv2.imread("Images/input-resize_480360/1.bmp",0)# 判断噪声类型noise_type = noise_type(img)print("噪声类型:", noise_type)# 绘制直方图plot_hist(img)

三、测试结果

运行上面代码后得到的结果如下,运行代码后需要等待一会。

在这里插入图片描述

下面是图像的直方图
在这里插入图片描述

四、总结

以上就是使用Python,通过统计图像像素值初步分析图像噪声类型。

注意,博文中的方法只是初步大致估计,并不能准确确定噪声类型,具体噪声类型还要根据实际情况判断。

总结不易,多多支持,谢谢!

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux调试------gdb的使用

目录 前言 一、gdb打开可执行程序 二、查看代码与操作断点 1.l 查看代码 2.b 打断点 3.info b 查看断点信息 4.d 删除断点 5.disable 和 enable 断点的禁用与启用 三、调试 1.r 启动调试 2. n 逐过程 3. s 逐语句 4.display显示变量 5.undisplay 取消显…

2024.1.10每日一题

LeetCode 2696.删除字串后的字符串最小长度 2696. 删除子串后的字符串最小长度 - 力扣(LeetCode) 题目描述 给你一个仅由 大写 英文字符组成的字符串 s 。 你可以对此字符串执行一些操作,在每一步操作中,你可以从 s 中删除 任…

【教学类-45-04】X-Y之间的“三连减加“题(a-b+c=)

作品展示: 背景需求: 【教学类-45-02】X-Y之间的“三连减“题(a-b-c)-CSDN博客文章浏览阅读465次,点赞15次,收藏7次。【教学类-45-02】X-Y之间的"三连减"题(a-b-c)https://blog.csdn.net/reasonsummer/article/details…

Redis 主从、哨兵和分片集群简单介绍

Redis 主从集群架构 单节点 redis 并发能力有上限,要进一步提高 redis 并发能力,就要搭建主从集群,实现读写分离 主从同步原理 Replicaition id:每台 master 机器都一个 repl_id,是数据集的表示,若 salv…

关于OSPF的五种报文类型介绍、OSPF八种状态机变化与报文交互介绍。

4.2.2 路由 OSPF(OSPF的5种报文、8种状态机、邻居与邻接的形成) 目录 OSPF的5种报文Hello报文报文字段简介 DD/DBD报文DD报文字段简介(首个DD报文)DD报文字段简介(非首个DD报文——携带简要路由信息)LSR报文…

FineBI实战项目一(7):每天每小时上架商品个数

1 明确数据分析目标 对所有商品的商家时间进行统计,统计每个小时上架商品的个数 2 创建用于保存数据分析结果的表 create table app_hour_goods(id int primary key auto_increment,daystr varchar(20),hourstr varchar(20),cnt int ); 3 编写SQL语句进行数据分析…

WPS或word中英文字母自动调整大小写,取消自动首字母大写,全部英文单词首字母大小写变换方法

提示:写英文论文时,如何实现英文字母大小写的自动切换,不用再傻傻的一个字母一个字母的编辑了,一篇文章搞定WPS与Word中字母大小写切换 文章目录 一、WPS英文单词大小写自动修改与首字母大写调整英文字母全部由大写变成小写 或 小…

论文阅读 Attention is all u need - transformer

文章目录 1 摘要1.1 核心 2 模型架构2.1 概览2.2 理解encoder-decoder架构2.2.1 对比seq2seq,RNN2.2.2 我的理解 3. Sublayer3.1 多头注意力 multi-head self-attention3.1.1 缩放点乘注意力 Scaled Dot-Product Attention3.1.2 QKV3.1.3 multi-head3.1.4 masked 3.…

蓝牙模块在智能城市中的关键角色

随着城市的不断发展,智能城市的概念正日益深入人心。在构建智能城市的过程中,蓝牙模块作为一种无线通信技术,发挥着重要的角色,连接和协调各种智能设备,提升城市的效率、可持续性和便利性。本文将深入探讨蓝牙模块在智…

React 入门 - 05(响应式与事件绑定)

本章内容 目录 一、响应式设计思想二、React 中的事件绑定 继上一节我们简单实现一个 TodoList来更加了解编写组件的一些细节。本节继续这个案例功能的完成。 一、响应式设计思想 1、在原生的 JS中,如果要实现点击”提交“按钮就将输入框的内容添加至页面列表中&…

对话惠买集团董事长兼CEO杜瑞勇:直播电商粗放时代结束,如何用AI+XR打造精细化的智慧直播生态?

“ 未来将是专业选手精细化运营的智慧直播时代。“ 整理 | 梦婕 编辑 | 渔舟 出品|极新&北京电子商务协会 直播电商在经过爆发式增长后,从业者不断涌入,竞争日趋激烈,行业发展必然将会进入到一个缓慢增长阶段。直播…

时间序列数据库选型: influxdb; netdiscover列出docker实例们的ip

influxdb influxdb: 有收费版本、有开源版本 influxdb 安装、启动(docker) docker run -itd --name influxdb-dev -p 8086:8086 influxdb #influxdb的web客户端(端口8003)被去掉了 #8006是web-service端口#docker exec -it influxdb-dev bashinfluxdb 自带web界面 从后面的…

Angular - 笔记

文章目录 语法属性绑定引用模板变量组件绑定父组件传子组件 input子组件传父组件 outputEventEmitter ViewChildViewChildren获取子组件对象列表 管道常用模块 参考文档 语法 属性绑定 Angular 的双向绑定语法是方括号和圆括号的组合 [()]。[] 进行属性绑定,() 进行…

phpcms v9后台添加草稿箱功能

一、后台添加文章模板phpcms/modules/content/templates/content_add.tpl.php中94行增加”保存草稿“按钮&#xff1a; <div class"button"><input value"<?php echo L(save_draft);?>" type"submit" name"dosubmit_draf…

PostGIS教程学习十九:基于索引的聚簇

PostGIS教程学习十九&#xff1a;基于索引的聚簇 数据库只能以从磁盘获取信息的速度检索信息。小型数据库将完全位于于RAM缓存&#xff08;内存&#xff09;&#xff0c;并摆脱物理磁盘访问速度慢的限制。但是对于大型数据库&#xff0c;对物理磁盘的访问将限制数据库的信息检…

DataFrame详解

清洗相关的API 清洗相关的API: 1.去重API: dropDupilcates 2.删除缺失值API: dropna 3.替换缺失值API: fillna 去重API: dropDupilcates dropDuplicates(subset):删除重复数据 1.用来删除重复数据,如果没有指定参数subset,比对行中所有字段内容,如果全部相同,则认为是重复数据,…

学习笔记之——3D Gaussian Splatting及其在SLAM与自动驾驶上的应用调研

之前博客介绍了NeRF-SLAM&#xff0c;其中对于3D Gaussian Splatting没有太深入介绍。本博文对3D Gaussian Splatting相关的一些工作做调研。 学习笔记之——NeRF SLAM&#xff08;基于神经辐射场的SLAM&#xff09;-CSDN博客文章浏览阅读967次&#xff0c;点赞22次&#xff0…

Java中的输入输出处理(一)

文件 文件&#xff1a;文件是放在一起的数据的集合。比如1.TXT。 存储地方&#xff1a;文件一般存储在硬盘&#xff0c;CD里比如D盘 如何访问文件属性&#xff1a;我们可以通过java.io.File类对其处理 File类 常用方法&#xff1a; 方法名称说明boolean exists()判断文件或目…

LiveGBS流媒体平台GB/T28181常见问题-国标编号是什么设备编号和通道国标编号标记唯一的摄像头|视频|镜头通道

LiveGBS国标GB28181中国标编号是什么设备编号和通道国标编号标记唯一的摄像头|视频|镜头通道 1、什么是国标编号&#xff1f;2、国标设备ID和通道ID3、ID 统一编码规则4、搭建GB28181视频直播平台 1、什么是国标编号&#xff1f; 国标GB28181对接过程中&#xff0c;可能有的小…

安科瑞对电子半导体行业电能质量监测与治理系统解决方案——安科瑞赵嘉敏

摘要&#xff1a;在国家鼓励半导体材料国产化的政策导向下&#xff0c;本土半导体材料厂商不断提升半导体产品技术水平和研发能力&#xff0c;逐渐打破了国外半导体厂商的垄断格局半导体材料国产化进程&#xff0c;促进中国半导体行业的发展。半导体产品的制造使用到的设备如单…