滤波器opencv

在OpenCV中,滤波器用于对图像进行平滑、锐化、边缘检测等操作。以下是一些常用的滤波器及其在OpenCV中的Python代码示例:

  1. 均值滤波器(平滑图像):

    import cv2
    import numpy as np

    读取图像

    image = cv2.imread('path_to_your_image.jpg')

    应用均值滤波器

    blurred_image = cv2.blur(image, (5, 5)) # 使用5x5的核进行滤波

    显示结果

    cv2.imshow('Original Image', image)
    cv2.imshow('Blurred Image', blurred_image)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

  2. 高斯滤波器(平滑图像,减少噪声):

    import cv2
    import numpy as np

    读取图像

    image = cv2.imread('path_to_your_image.jpg')

    应用高斯滤波器

    gaussian_blur = cv2.GaussianBlur(image, (5, 5), 0) # 使用5x5的核,标准差为0

    显示结果

    cv2.imshow('Original Image', image)
    cv2.imshow('Gaussian Blurred Image', gaussian_blur)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

  3. 中值滤波器(去除椒盐噪声):

    import cv2
    import numpy as np

    读取图像

    image = cv2.imread('path_to_your_image.jpg')

    应用中值滤波器

    median_blur = cv2.medianBlur(image, 5) # 使用5x5的核

    显示结果

    cv2.imshow('Original Image', image)
    cv2.imshow('Median Blurred Image', median_blur)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

  4. 双边滤波器(边缘保存平滑):

    import cv2
    import numpy as np

    读取图像

    image = cv2.imread('path_to_your_image.jpg')

    应用双边滤波器

    bilateral_filter = cv2.bilateralFilter(image, 9, 75, 75) # 直径9,颜色空间标准差75,坐标空间标准差75

    显示结果

    cv2.imshow('Original Image', image)
    cv2.imshow('Bilateral Filter Image', bilateral_filter)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

  5. Sobel边缘检测滤波器:

    import cv2
    import numpy as np

    读取图像

    image = cv2.imread('path_to_your_image.jpg')
    gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

    应用Sobel滤波器

    sobel_x = cv2.Sobel(gray_image, cv2.CV_64F, 1, 0, ksize=5) # 水平方向
    sobel_y = cv2.Sobel(gray_image, cv2.CV_64F, 0, 1, ksize=5) # 垂直方向

    显示结果

    cv2.imshow('Original Image', image)
    cv2.imshow('Sobel X', sobel_x)
    cv2.imshow('Sobel Y', sobel_y)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

'path_to_your_image.jpg' 替换为您要处理的图像的实际路径。

相关推荐
AI的探索之旅18 小时前
97 个 OpenCV 实例(十九):视频写入,VideoWriter 与 FourCC 编码
人工智能·opencv·音视频
这个人懒得名字都没写2 天前
OpenCV 官方教程中的测试图片Can’t find required data file
python·opencv
AI的探索之旅2 天前
97 个 OpenCV 实例(十七):图片读写,FileStorage 与 JPEG 采样
人工智能·opencv·计算机视觉
牧羊人.3332 天前
计算机视觉基础第15章|DNN实现图像风格迁移
图像处理·人工智能·深度学习·opencv·计算机视觉
欧特克_Glodon2 天前
OpenCV计算机视觉开发入门与实践<二十九>:grabCut算法分割图像
opencv·算法·计算机视觉·图像分割·grabcut 算法
leoZ2312 天前
AI+前端提效-09 AI赋能前端测试:单元测试、E2E测试自动生成,提升覆盖率
前端·人工智能·opencv·目标检测·数据挖掘·单元测试·语音识别
别动我齐刘海3 天前
从0到1独立搭建机器人软件系统
c++·人工智能·神经网络·opencv·目标检测·机器学习·机器人
AI的探索之旅3 天前
97 个 OpenCV 实例(十五):几何校正,透视变换 + ECC 对齐
人工智能·opencv·计算机视觉
欧特克_Glodon4 天前
OpenCV计算机视觉开发入门与实践<二十七>:图像分割概述
c++·人工智能·opencv·计算机视觉
yyk333244 天前
OpenCV中运动目标检测
opencv·目标检测·目标跟踪