最近要做一个Project,是使用TV来对添加了Gaussian和Salt&Pepper噪声的图像进行恢复,前期的任务是生成噪声污染的图像。

噪声图像的生成采用对图像进行高斯平滑,之后在随机的对图像添加椒盐噪声。

里面用到的几个opencv的方法:

random.random_integers:产生范围内的随机整数

cv2.GaussianBlur:对图像进行高斯滤波

源代码:

import cv2

from numpy import *

def SaltAndPepper(src,percetage):

NoiseImg=src

NoiseNum=int(percetage*src.shape[0]*src.shape[1])

for i in range(NoiseNum):

randX=random.random_integers(0,src.shape[0]-1)

randY=random.random_integers(0,src.shape[1]-1)

if random.random_integers(0,1)==0:

NoiseImg[randX,randY]=0

else:

NoiseImg[randX,randY]=255

return NoiseImg

if __name__=='__main__':

img=cv2.imread('Lena.jpg',flags=0)

gimg=cv2.GaussianBlur(img,(7,7),sigmaX=0)

NoiseImg=SaltAndPepper(gimg,0.4)

#cv2.imshow('img',gimg)

#figure()

Pers=[0.4,0.5,0.6]

for i in Pers:

NoiseImg=SaltAndPepper(gimg,i)

fileName='GaussianSaltPepper'+str(i)+'.jpg'

cv2.imwrite(fileName,NoiseImg,[cv2.IMWRITE_JPEG_QUALITY,100])

cv2.imshow('img2',NoiseImg)

cv2.waitKey()

添加40%椒盐噪声的效果图:

添加50%椒盐噪声的效果图:

添加60%椒盐噪声的效果图:

python opencv高斯滤波_【OpenCV】基于Python的图像高斯平滑和椒盐噪声处理 | 学步园...相关推荐

  1. python人脸识别训练模型_开源 | 基于Python的人脸识别:识别准确率高达99.38%!

    原标题:开源 | 基于Python的人脸识别:识别准确率高达99.38%! 该库使用 dlib 顶尖的深度学习人脸识别技术构建,在户外脸部检测数据库基准(Labeled Faces in the Wi ...

  2. python requests是什么_如何基于Python + requests实现发送HTTP请求

    这篇文章主要介绍了如何基于Python + requests实现发送HTTP请求,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一.在接口自动化测试 ...

  3. python个人网站系统_利用基于Python的Pelican打造一个自己的个人纯静态网站

    其实呢这么多年以来我一直建议每个有技术追求的开发者都要有写技术博客记笔记的良好习惯,一来可以积累知识,二来可以帮助别人,三来可以把开发中遇到的问题记录用来自省,第四可以通过交换友链来结识更多的技术领域 ...

  4. Python之PIL之绘图:基于Python的PIL库绘制各种图形、添加文字等

    Python之PIL之绘图:基于Python的PIL库绘制各种图形.添加文字等 目录 一.绘制各种形状各种案例 1.绘制矩形 2.绘制圆形.弧线形

  5. 《Python与硬件项目案例》— 基于Python的口罩检测与指纹识别签到系统设计

    <Python与硬件项目案例>- 基于Python的口罩检测与指纹识别签到系统设计 目录 <Python与硬件项目案例>- 基于Python的口罩检测与指纹识别签到系统设计 1 ...

  6. 《Python与硬件项目案例》— 基于Python与指纹模块AS608的指纹识别签到考勤系统(下篇)(期末大作业、课程设计、毕业设计、结课项目)

    目录 <Python与硬件项目案例>- 基于Python与指纹模块AS608的指纹识别签到考勤系统(下篇) 概述 参考代码 <Python与硬件项目案例>- 基于Python与 ...

  7. python数据处理高斯滤波_十大点云数据处理技术梳理

    研究点云数据时,感觉无从下手? 看看这十大点云数据处理技术,换个思路学点云. 点云 · 定义 简言之,在获取物体表面每个采样点的空间坐标后,得到的是一个点的集合,称之为"点云".包 ...

  8. 用python画卡通图_需要用Python和OpenCV制作一张卡通漫画版的图片

    我正在尝试制作一个能使任何图像看起来像卡通漫画的功能. 这是我到目前为止的代码: import numpy import cv2 __author__ = "Michael Beyeler& ...

  9. python扫雷算法_如何基于Python实现自动扫雷

    这篇文章主要介绍了如何基于Python实现自动扫雷,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 自动扫雷一般分为两种,一种是读取内存数据,而另一种 ...

最新文章

  1. iOS 获取self类型
  2. zipimport.ZipImportError: can't decompress data; zlib not available
  3. Angular 不同种类 Module 的介绍
  4. 可能是最全面的 Java G1学习笔记
  5. springboot 做表白墙_华广表白墙 第六期|hsl每天都想和你嘻嘻哈哈
  6. lua的一些api文档总结吧
  7. MPEG音视频编解码之MP3编解码概述
  8. redis源码dict.c simple reading
  9. 蓝桥杯 ADV-184 算法提高 素数求和
  10. 诡异的json包含bom头
  11. python调用matlab函数_python调用matlab的m自定义函数方法
  12. ajax的理解与工作流程
  13. 悉尼大学商业数据科学与计算机学院,悉尼大学数据科学专业
  14. IE源代码摘抄,基于泄漏的IE5.0(持续更新)
  15. 笨方法学 python3怎么样_笨办法学python3日常问题解决
  16. C语言端口扫描源码,C语言实现TCP多线程端口扫描
  17. JasperReport:几个莫名其妙的问题的解决
  18. spring中的hibernate-validate数据校验
  19. vue移动端适配—手动rem适配
  20. Mac下ImageMagick安装(libpng)

热门文章

  1. (转)SQL Server 监控统计阻塞脚本信息
  2. 设置PDF文件默认缩放比例
  3. 租用服务器怎么免去后顾之忧?
  4. Lombok学习笔记— 消除冗余java代码
  5. kali 上面已经安装了mysql但是启动报 ERROR 2002
  6. 留存光明延续大爱 80后父母捐病儿角膜感动冰城
  7. Window系统下 MongoDB 下载 和 安装
  8. 分布式 Spring Cloud 基于 Spring Boot 开发一整套
  9. Kaldi AMI数据集脚本学习1----cmd.sh和path.sh
  10. 宕昌一中2021高考成绩查询,2020届毕业生:宕昌一中“拍了拍”你 | 青春不散场 扬帆再起航...