cv2.blur 是 OpenCV 中实现均值滤波(归一化盒式滤波) 的核心函数

代码

bash 复制代码
# -*- coding:utf-8 -*-
import cv2 as cv
import sys


def my_blur(image):
    return cv.blur(image, (3, 3)), cv.blur(image, (9, 9))


if __name__ == '__main__':
    # 读取图像并判断是否读取成功
    img = cv.imread('./images/Gray.jpg')
    if img is None:
        print('Failed to read Gray.jpg.')
        sys.exit()

    img_sp = cv.imread('./images/GraySalt.jpg')
    if img_sp is None:
        print('Failed to read GraySalt.jpg.')
        sys.exit()

    img_gauss = cv.imread('./images/GrayGauss.jpg')
    if img_gauss is None:
        print('Failed to read GrayGauss.jpg.')
        sys.exit()

    img1, img2 = my_blur(img)
    img_sp1, img_sp2 = my_blur(img_sp)
    img_gauss1, img_gauss2 = my_blur(img_gauss)

    # 展示结果
    cv.imshow('Origin Image', img)
    cv.imshow('3 * 3 Blur Image', img1)
    cv.imshow('5 * 5 Blur Image', img2)

    cv.imshow('Origin sp-noisy Image', img_sp)
    cv.imshow('3 * 3 sp-noisy Blur Image', img_sp1)
    cv.imshow('5 * 5 sp-noisy Blur Image', img_sp2)

    cv.imshow('Origin gauss-noisy Image', img_gauss)
    cv.imshow('3 * 3 gauss-noisy Blur Image', img_gauss1)
    cv.imshow('5 * 5 gauss-noisy Blur Image', img_gauss2)

    cv.waitKey(0)
    cv.destroyAllWindows()
```![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/4a62db63440c447bab5abaa5f91236df.png

![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/8038639ce95a4fdc81c87ef1c47ae264.png)


cv2.blur 是 OpenCV 中实现均值滤波(归一化盒式滤波) 的核心函数,通过计算像素邻域内的平均值来平滑图像,适用于消除高斯噪声、降低图像细节复杂度等场景。
一、函数基本语法
python
运行
cv2.blur(src, ksize, dst=None, anchor=None, borderType=None)
参数说明
参数	 ##含义	## 必填	##默认值
src	##输入图像(可以是单通道灰度图或多通道彩色图,如 BGR 格式)	##是	###-
ksize	##滤波核(卷积核)的尺寸,格式为 (width, height)(如 (3,3)、(5,5))	##是	##-
dst	##输出图像(可选,若不指定则返回新图像)	##否	##None
anchor	##核的锚点(滤波时的参考点),默认 (-1,-1) 表示锚点在核中心	##否	##(-1, -1)
borderType	##边界填充方式(处理图像边缘像素),##默认 cv2.BORDER_DEFAULT	##否	cv2.BORDER_DEFAULT
返回值
返回与输入图像尺寸、通道数相同的滤波后图像(ndarray 格式)。

二、核心原理
均值滤波的本质是:对图像中每个像素,用其邻域(核大小)内所有像素的平均值替换该像素值。公式:
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/7a08f39f61734b56aba84afddfa11931.png)

核越大,平滑效果越强,但图像越模糊(细节丢失越多);
核尺寸通常取奇数(如 3×3、5×5),避免像素偏移。
相关推荐
-XWB-17 分钟前
【LLM】Agent Planning 完全指南:8 种纯 LLM 范式 + 8 种混合规划模式详解(二)
人工智能·经验分享·aigc·学习方法·ai编程
微硬创新26 分钟前
耐达讯自动化 CC-Link IE 转 PROFINET网关在污水厂智能化升级实战
人工智能·物联网·网络协议·自动化·信息与通信
Smoothcloud润云29 分钟前
国内GPU算力租赁平台横向测评:资源、成本、稳定性三维对比
人工智能·ai·云计算·gpu算力·gpu
点PY37 分钟前
一种从CTA图像中去除扫描床的方法及装置
人工智能·计算机视觉
晏宁科技YaningAI1 小时前
VoIP系统的工程实现模型:从信令控制到媒体传输的完整架构解析
网络·人工智能·架构·系统架构·信息与通信
IT_陈寒1 小时前
Vue这个特性差点让我加班到凌晨,谁懂啊
前端·人工智能·后端
D2aZXN3FhrDa7e2121 小时前
佛山AI智能获客系统适配性:工厂门店如何挑选工具
人工智能·美诚科技有限公司
机器之心1 小时前
WAIC现场,这家公司让一群不同的机器人共用一个大脑
人工智能·openai
小白巨白1 小时前
玫瑰花园管理系统:AI识病+3D可视化,一套面向中小型玫瑰种植园的数字化管理工具
css·人工智能·计算机视觉·html5
延凡科技2 小时前
多场景落地复盘:端边云架构无人机智能巡检系统设计与实践
大数据·数据结构·人工智能·科技·架构·无人机·能源