opencv 处理图像去噪的几种方法

OpenCV 提供了多种图像去噪的方法,以下是一些常见的去噪技术以及相应的 Python 代码示例:

  1. 均值滤波:使用像素邻域的灰度均值代替该像素的值。

    python 复制代码
    import cv2
    import numpy as np
    import matplotlib.pyplot as plt
    
    img = cv2.imread("4.jpg")
    result = cv2.blur(img, (5, 5))  # 传入读取的图像和核尺寸
    cv2.imshow("Noise", img)
    cv2.imshow("Mean Filter", result)
    cv2.waitKey(0)
  2. 高斯滤波:适用于消除高斯噪声,通过加权平均邻域内的像素值来计算中心像素的新值。

    python 复制代码
    result = cv2.GaussianBlur(img, (5, 5), 0)  # 高斯核尺寸和标准差
    cv2.imshow("Gaussian Filter", result)
  3. 中值滤波:选择一个含有奇数点的窗口,取窗口中像素灰度值的中位数来代替中心像素的值,有效去除椒盐噪声。

    python 复制代码
    result = cv2.medianBlur(img, 5)  # 核大小必须是大于1的奇数
    cv2.imshow("Median Filter", result)
  4. 方框滤波:类似于均值滤波,但可以选择是否对结果进行归一化。

    python 复制代码
    result = cv2.boxFilter(img, -1, (5, 5), normalize=True)  # normalize=True 进行归一化
    cv2.imshow("Box Filter", result)
  5. 双边滤波:在滤波时同时考虑空间邻近度与像素值相似度,保留边缘信息。

    python 复制代码
    result = cv2.bilateralFilter(img, 9, 75, 75)  # 直径、颜色空间的标准差和坐标空间的标准差
    cv2.imshow("Bilateral Filter", result)
  6. 非局部均值去噪(NLM):使用图像中的所有像素进行去噪,根据相似度加权平均。

    python 复制代码
    dst = cv2.fastNlMeansDenoisingColored(img, None, 10, 10, 7, 21)
    plt.subplot(121),plt.imshow(img)
    plt.subplot(122),plt.imshow(dst)
    plt.show()
  7. 高通滤波:保留高频部分,常用于边缘增强。

    python 复制代码
    x = cv2.Sobel(img, cv2.CV_16S, 1, 0)
    y = cv2.Sobel(img, cv2.CV_16S, 0, 1)
    absx = cv2.convertScaleAbs(x)
    absy = cv2.convertScaleAbs(y)
    dist = cv2.addWeighted(absx, 0.5, absy, 0.5, 0)
    cv2.imshow('High Pass Filter', dist)

请注意,上述代码中的 img 变量需要先加载一个图像,cv2.imread 函数用于读取图像,cv2.imshow 用于显示图像,cv2.waitKey(0) 用于等待用户按键操作,plt.show() 用于显示 Matplotlib 图像。在实际使用中,需要根据具体情况调整核尺寸、标准差等参数。

相关推荐
哈基咪怎么可能是AI2 分钟前
😱【OpenClaw 源码解析 第3期】你的 AI 助手每次都「失忆」?学会这一招,让它记住你所有重要决策,效率直接翻倍!
人工智能·后端
阿里云大数据AI技术8 分钟前
OPC时代,AI底座先行——FlagOS携Qwen3-8B镜像正式登陆阿里云
人工智能
zylyyyyyy8 分钟前
虚拟机X OpenClaw——一键“幻”养“龙虾”
大数据·人工智能·云计算
V搜xhliang02468 分钟前
面部表情识别(基于计算机视觉的文本分类等)的识别原理
人工智能·目标检测·机器学习·计算机视觉·分类·数据挖掘·知识图谱
研究点啥好呢13 分钟前
3月15日GitHub热门项目推荐 | 当AI拥有记忆
人工智能·python·github·openclaw
yhdata17 分钟前
年复合增速11.5%!智慧安全巡检机器人,锚定未来六年高成长新航向
人工智能·安全·机器人
Smoothcloud润云19 分钟前
Seedance 2.0深度解析:从“抽卡地狱”到工业化视频创作的革命
大数据·人工智能·计算机视觉·语言模型·ai作画·音视频·语音识别
小龙报19 分钟前
【AI】高效交互的艺术:AI提示工程与大模型对话指南
人工智能·深度学习·神经网络·自然语言处理·chatgpt·交互·语音识别
肖永威24 分钟前
Python 工程化实战:从目录结构到 VSCode 完美配置
vscode·python·python工程
明君8799730 分钟前
Genkit Google 开源的 AI 应用开发框架介绍
人工智能