当前位置: 首页 > news >正文

图像平滑处理

# 引入对应的模块

import cv2
import numpy as np

#  读取图片

img = cv2.imread('images/NOISYCAT.png')

# 定义图像显示函数
def cv_show(name, img):
    cv2.imshow(name, img)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

# 显示原图
 cv_show('noisycat',img)

一、 均值滤波
# 简单平均卷积操作 一般卷积核取的是奇数
blur = cv2.blur(img,(3,3))
cv_show('均值滤波', blur)

二、方框滤波
# 基本与均值滤波一致,可以选择归一化,在python中,
# ddepth=参数-1的意思是,图片的颜色通道与规定的一致

box1 = cv2.boxFilter(img, -1, (3,3),normalize=True)
cv_show('boxFliter',box1)

# 使用方框滤波容易出现越界情况,大于255
box2 = cv2.boxFilter(img, -1, (3,3),normalize=False)
cv_show('boxF',box2)

三、高斯滤波

aussian = cv2.GaussianBlur(img, (5,5),1)
cv_show('高斯',aussian)

 

四、中值滤波

median = cv2.medianBlur(img, 5)
cv_show('median',median)

c67b4aa7f6834e8fb784f1b5d4dfe53f.png

五、 展示所有的
res = np.hstack((blur,aussian,median))
print(res)
cv_show('median vs average',res)

六、显示结果:

ca79a72fd95a4dbcbf71cde3112de40a.png

 


http://www.mrgr.cn/news/46484.html

相关文章:

  • Nodejs 安装配置多个版本
  • 局域网共享文件夹实现两台Windows电脑之间传输文件
  • 学习进程前的简单认知-体系结构与OS
  • RabbitMQ介绍与使用
  • 典型的 package.json 文件中的
  • 认识String类
  • 基于vue框架的大学生在线教育jp6jw(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。
  • IDEA 输入英文字体变了的问题
  • 【宽搜】6. leetcode 513 找树左下角的值
  • patch函数前两个参数位
  • c++输出保留n位小数
  • 默认情况下,`QTableView`中的单元格内容是不支持自动换行的,而是将文本截断或者显示省略号。要实现内容自动换行。要用Delegate
  • 鹧鸪云光伏软件全面解析
  • Web3与人工智能的交叉应用探索
  • 【深度学习总结】热力图-Grad-CAM使用
  • whistle使用实践
  • Linux内核 -- 使用 `proc_create_seq` 和 `seq_operations` 快速创建 /proc 文件
  • VAE(与GAN)
  • k8s pod详解使用
  • 【系统架构设计师】案例专题二:系统开发基础考点梳理
  • IPguard与Ping32:安全性、易用性与稳定性全面对比
  • 更新子节点的优化策略2:key
  • 集合.上(2)
  • 【Redis】Set类型的常用命令与应用场景
  • Java语言教程:打造你的第一款五子棋游戏 JAVA学习攻略心得总结
  • docker k8s mysql 命令行 sql 不能输入中文