opencv(15) 图像平滑处理之二:cv2.GaussianBlur()高斯滤波

这篇具有很好参考价值的文章主要介绍了opencv(15) 图像平滑处理之二:cv2.GaussianBlur()高斯滤波。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1 高斯滤波原理

高斯滤波是一种线性平滑滤波,适用于消除高斯噪声,广泛应用于图像处理的减噪过程。

高斯模板是通过对二维高斯函数进行采样(高斯模糊的卷积核里的数值满足高斯分布)、量化并归一化得到的,它考虑了邻域像素位置的影响,距离当前被平滑像素越近的点,加权系数越大,将加权平均值作为中心像素的输出结果。

加权的目的在于减轻平滑过程中造成的图像模糊

高斯模糊对于从图像中去除高斯噪声非常有效

高斯滤波常用的一个 3×3 模板

opencv高斯滤波,opencv,计算机视觉,人工智能

2 函数说明

函数原型:dst=GaussianBlur(src,ksize,sigmaX [,dst [,sigmaY [,borderType]]])

参数:

  1. src:输入图像;图像可以具有任意数量的通道,这些通道可以独立处理,但深度应为CV_8U,CV_16U,CV_16S,CV_32F或CV_64F。
  2. ksize:高斯内核大小。 (int,int);ksize.width和ksize.height可以不同,但​​它们都必须为正数和奇数,也可以为零,然后根据sigma计算得出。
  3. sigmaX: X方向上的高斯核标准偏差。
  4. dst:输出图像的大小和类型与src相同。
  5. sigmaY :Y方向上的高斯核标准差;如果sigmaY为零,则将其设置为等于sigmaX;如果两个sigmas为零,则分别从ksize.width和ksize.height计算得出;为了完全控制结果,而不管将来可能对所有这些语义进行的修改,建议指定所有ksize,sigmaX和sigmaY。
  6. borderType: 它描述要添加的边框类型。它由cv2等标志定义。cv2.BORDER_CONSTANT cv2.BORDER_REFLECT等

返回值:它返回一个图像。

3 示例

import cv2 as cv

img=cv.imread('C:\\Users\\xxx\\Downloads\\lena.jpg')


gauss=cv.GaussianBlur(img,(7,7),0)# (7,7)为卷积核大小


print(f'原图shape = {img.shape},高斯滤波后的shape = {gauss.shape}')
cv.imshow('original',img)
cv.imshow('gauss',gauss)
cv.waitKey(0)
cv.destroyAllWindows()

 运行后结果如下:

opencv高斯滤波,opencv,计算机视觉,人工智能

 文章来源地址https://www.toymoban.com/news/detail-688774.html

到了这里,关于opencv(15) 图像平滑处理之二:cv2.GaussianBlur()高斯滤波的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 我在Vscode学OpenCV 图像处理四(轮廓查找 cv2.findContours() cv2.drawContours())-- 待补充

    在OpenCV中,边缘检测和轮廓查找是两个不同的图像处理任务,它们有不同的目标和应用。 1.1.1 边缘检测: 定义: 边缘检测是指寻找图像中灰度级别变化明显的地方,即图像中物体之间的界限。这些变化通常表示图像中的边缘或轮廓。 方法: 常用的边缘检测算法包括Sobel、

    2024年02月03日
    浏览(60)
  • CV2逐步学习-2:cv2.GaussianBlur()详解

    目录 高斯模糊GaussianBlur()中 参数详解 1.1. 由参数解释产生的 问题 深入理解前的准备: 高斯函数、图像滤波处理及卷积核 解释1.1的问题 权重矩阵 、高斯模糊的流程 摘要 高斯滤波是一种 线性平滑滤波 高斯滤波是对整幅图像进行 加权平均的过程 ,每一个像素点的值都由其本

    2024年02月05日
    浏览(68)
  • opencv图像旋转和翻转,cv2.flip,cv2.rotate

    目录 翻转图像 图像旋转         opencv中使用cv2.filp可以实现图像翻转 src:输入图像 flipCode:flipCode 一个标志来指定如何翻转数组;0表示上下翻转,正数表示左右翻转,负数表示上下左右都翻转。 dst:输出图像         下面代码对图像进行不同旋转。         opencv中使

    2024年02月15日
    浏览(78)
  • 图像平滑处理:cv::filter2D()函数详解

    cv::filter2D 函数可以对图像进行线性滤波。 函数可以对图像进行线性滤波。该函数使用指定的卷积核对输入图像进行卷积,以计算输出图像中每个像素的值。 该函数的原型如下: 其中, src 参数表示输入图像, dst 参数表示输出图像, ddepth 参数表示输出图像的深度, kernel 参

    2024年02月11日
    浏览(48)
  • opencv图像仿射变换,cv2.warpAffine

    目录 仿射变换原理介绍 cv2.warpAffine函数介绍 代码实例          仿射变换 ,又称 仿射映射 ,是指在几何中,一个向量空间进行一次线性变换并接上一个平移,变换为另一个向量空间。         在有限维的情况,每个仿射变换可以由一个矩阵A和一个向量b给出,它可以写

    2024年02月05日
    浏览(68)
  • opencv(4): cv2.imwrite()图像的保存

    语法格式:retval = cv2.imwrite(filename, image [, paras]) 参数说明: filename :代表文件名的字符串。文件名必须包含图像格式,例如.jpg,.png等。 image :图像数据矩阵 paras: 不同编码格式的参数,可选项 cv2.CV_IMWRITE_JPEG_QUALITY :设置 .jpeg/.jpg 格式的图片质量,取值为 0-100(默认值 95)

    2024年02月01日
    浏览(46)
  • 图像处理:基于cv2.inpaint()图像修补

    今天我们将学习如何通过一种“修复”的方法消除旧照片中的小噪音,笔画等。当然,经过我的测试你也可以将其用于削弱混杂了其他的颜色的图像。 大多数人家都会有一些旧的的旧化照片,上面有黑点,一些笔触等。你是否曾经想过将其还原?我们不能简单地在绘画工具中

    2024年02月04日
    浏览(40)
  • Opencv之图像滤波:6.双边滤波(cv2.bilateralFilter)

            前面我们介绍的滤波方法都会对图像造成模糊,使得边缘信息变弱或者消失,因此需要一种能够对图像边缘信息进行保留的滤波算法,双边滤波是综合考虑空间信息和色彩信息的滤波方式,在滤波过程中能够有效地保护 图像内的边缘信息。         之前介绍的

    2024年02月05日
    浏览(49)
  • opencv-19 图像色彩空间转换函数cv2.cvtColor()

    cv2.cvtColor() 函数是 OpenCV 中用于图像颜色空间转换的函数。它允许你将图像从一个色彩空间转换为另一个色彩空间。在 Python 中,你可以使用这个函数来实现不同色彩空间之间的转换。 函数的基本语法为: 参数说明: src:输入图像,可以是 NumPy 数组或 OpenCV 中的 Mat 对象。

    2024年02月15日
    浏览(54)
  • 【Opencv--自适应图像二值化】cv2.adaptiveThreshold()

    在这里 cv2.threshold函数 介绍了普通的opencv图像阈值处理函数。但threshold 的图像阈值处理对于某些光照不均的图像,这种全局阈值分割的方法并不能得到好的效果。 图像阈值化操作中,我们更关心的是从二值化图像中分离目标区域和背景区域,仅仅通过固定阈值很难达到理想

    2024年02月07日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包