本文实例为大家分享了python手写均值滤波的具体代码,供大家参考,具体内容如下

原理与卷积类似,设置一个n*n的滤波模板,滤波模板内的值累加除以模板的尺寸大小取平均为滤波后的值。

代码如下:

import cv2 as cv

import numpy as np

#均值滤波

def meansBlur(src, ksize):

'''

:param src: input image

:param ksize:kernel size

:return dst: output image

'''

dst = np.copy(src) #创建输出图像

kernel = np.ones((ksize, ksize)) # 卷积核

padding_num = int((ksize - 1) / 2) #需要补0

dst = np.pad(dst, (padding_num, padding_num), mode="constant", constant_values=0)

w, h = dst.shape

dst = np.copy(dst)

for i in range(padding_num, w - padding_num):

for j in range(padding_num, h - padding_num):

dst[i, j] = np.sum(kernel * dst[i - padding_num:i + padding_num + 1, j - padding_num:j + padding_num + 1])

// (ksize ** 2)

dst = dst[padding_num:w - padding_num, padding_num:h - padding_num] #把操作完多余的0去除,保证尺寸一样大

return dst

img_path = r"F: 3.png"

img = cv.imread(img_path,0)

dst = meansBlur(img,5)

cv.imshow('src',img)

cv.imshow('dst',dst)

print(dst)

cv.waitKey(0)

注释:红框表示两个for循环的范围,i - padding_num:i + padding_num + 1表示第i行上移padding_num行,下移padding_num,+1是因为list列表为左闭右开区间,右边的元素取不到值。padding表示周围填充一圈。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易采站长站。

python手写实现均值滤波_python手写均值滤波相关推荐

  1. python手写均值滤波器_python手写均值滤波

    本文实例为大家分享了python手写均值滤波的具体代码,供大家参考,具体内容如下 原理与卷积类似,设置一个n*n的滤波模板,滤波模板内的值累加除以模板的尺寸大小取平均为滤波后的值. 代码如下: imp ...

  2. python 安卓app按钮数字识别_Python 手写数字识别-knn算法应用

    knn算法代码: from numpy import * import operator import os def img2vector(filename): """ ...

  3. python实现均值滤波_python如何实现均值滤波?

    均值滤波:典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标像素为中心的周围8个像素,构成一个滤波模板,即去掉目标像素本身),再用模板中的全体像素的平均值来代 ...

  4. python能写桌面程序吗_python能写桌面程序吗

    其实Python/Java/PHP都不适合用来做桌面开发,Java还是有几个比较成熟的产品的,比如大名鼎鼎的Java集成开发环境IntelliJ IDEA.Eclipse就是用Java开发的,不过PH ...

  5. python爬虫源码附注解_Python小白写的三个入门级的爬虫(附代码和注释)

    Python小白写的三个入门级的爬虫(附注释) 写在前面的话:作者目前正在学习Python,还是一名小白,所以注释可以会有些不准确的地方,望谅解. 这三个小爬虫不是很难,而且用处可能也不大,主要还是锻 ...

  6. python try语句各种格式输出_python如何写try语句

    try: #运行的代码 except : #如果在try部份引发了'name'异常 except ,: #如果引发了'name'异常,获得附加的数据 else: #如果没有异常发生 try的工作原理是 ...

  7. python怎么设置回文数_python如何写一个函数判断回文数?

    python如何写一个函数判断回文数? python写一个函数判断回文数的方法: 设n是一任意自然数.若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数.例如,若n=1234321,则称 ...

  8. python代码一行过长怎么办_Python – 我写代码时如果有一行过长该怎么处理?

    Python的编码规范要求每行的长度不超过80,那就就有一个问题,如果我真的需要在一行写80个字符以上的代码怎么办? Python语句都可以很简单的实现把一行分为多行,比如下面这两种写法是等价的: l ...

  9. python实现中值滤波_Python实现中值滤波去噪方式

    中值滤波器去噪: 中值滤波的主要原理是将数字图像中的某点用该点的邻域中各个像素值的中值所来代替,这样就能让目标像素周围能够更好的接近真实值,比如一张白纸上有一个黑点时,黑点的像素值比较大,经过中值滤波 ...

  10. python对excel操作简书_python Excel 写

    1.优点 一.功能比较强 相对而言,这是除Excel自身之外功能最强的工具了.比如我就用到了它提供的:字体设置.前景色背景色.border设置.视图缩放(zoom).单元格合并.autofilter. ...

最新文章

  1. mysql主从不同步怎么恢复_mysql主从不同步时,怎么恢复
  2. Selenium3自动化测试——17.控制滑动解锁
  3. .NET程序设计之四书五经
  4. element 表格宽度自适应_Python如何以表格形式打印输出!
  5. Cordova将vue项目打包成apk(全使用命令行)
  6. 6个信号提醒是时候跳槽了 CIO务必get到
  7. python面向对象初识
  8. Java集合工具类:Collections
  9. C#实现动态系统托盘图标
  10. mscoco数据集_重磅!小目标检测的数据增广秘籍
  11. HTML5开发APP有哪些优点和缺点?HTML5优势和劣势大对比
  12. oracle的查询数据(检索数据)
  13. android getLong()用法
  14. Harmony OS — Image图片
  15. sps的process插件安装包_PROCESS插件安装及使用
  16. 三星固态驱动安装失败_三星950 Pro固态硬盘用U盘装win7失败解决教程
  17. Thinkphp添加图片全屏水印
  18. 移动应用/APP的测试流程及方法
  19. Mybatis报错: Could not find resource mapper
  20. DTI预处理及概率性纤维束追踪

热门文章

  1. Python3 豆瓣《前任3》评论的词云
  2. 零基础入门学习的UG模具设计技巧
  3. python pip 安装 升级 卸载命令
  4. 001_KNN与线性分类器
  5. 通达信画线文件是在服务器吗,通达信画线工具的使用说明★★★★
  6. 食品行业十大进销存软件功能大对比,我教你怎么选
  7. ERP进销存系统开发源码交付
  8. win10家庭中文版和专业版的区别
  9. 火狐浏览器添加restclient.xpi 添加插件时候遇见的 附件未经验证无法安装
  10. (二)Excel函数应用之数学和三角函数