zoukankan      html  css  js  c++  java
  • opencv3 6.2非线性滤波

    非线性滤波

    如果噪声是散粒噪声而不是高斯噪声的时候,用高斯滤波对图像进行模糊,噪声像素不会被去除,只是转换为更为柔和但是仍然可见的散粒。

    中值滤波

    MedianFilter是一种典型的非线性滤波技术,基本思想是用像素领域的灰度值的中值代替像素点的灰度值,一些情况下对保留图像边缘细节有效果。
    对于斑点噪声和椒盐噪声效果尤其好,不依赖于领域中与典型值差别大的值。

    • 中值滤波vs均值滤波
    • 优势:消除噪声,保留边缘的能力都略胜一筹,滤除脉冲干扰非常有效果
    • 劣势:花费时间前者是后者五倍以上,中值滤波对于细节多的图像不太合适

    双边滤波

    Bilateral Filter是一种非线性滤波方法,姐和图像的空间邻近度和像素值相似度的一种折中处理,同时考虑空域信息和灰度相似值,达到去噪保边。
    函数公式比较复杂,加权系数取决于定义域核和值域核的乘积。

    非线性滤波相关核心API函数

    中值滤波 medianBlur函数
    该函数用中值滤波器平滑处理一张图像,三个参数。

    • 参数1 inputarray src,要求1 3 4 通道的Mat, ksize为3or5时候,深度是CV_8U CV_16U CV_32F 较大孔径尺寸的图片,只能是CV_8U
    • 参数2 outputArray dst;
    • 参数3 int 类型ksize 孔径的线性尺寸,必须是大于一的奇数(3 5 7…)

    双边滤波 bilateralFilter函数

    • 参数1 src8位或者浮点型单通道、三通道图像
    • 参数2 dst 目标图像
    • 参数3 int类型d 过滤过程中每个像素领域的直径,<=0时候,opencv会从参数5来计算他
    • 参数4 double sigmaColor 颜色空间滤波器的sigma值 越大,该像素领域有越宽广的颜色会混合一起
    • 参数5 double sigmaSpace 坐标空间中滤波器的sigma值,坐标空间的标注方差,越大,表示越远的像素灰相互影响,是更大的区域中足够相似的颜色获取相同的颜色;d>0时,领域大小与sigmaSpac无关,否则,d正比于sigmaSpae;
    • 参数6 int borderType 有默认值

    运行例程后得到的效果图发现 中值滤波对原图颠覆很大,双边滤波与原图差别不大,要仔细看才能看出效果。

  • 相关阅读:
    如何对抗信息茧房?
    术语
    2021.07.17软件更新公告
    【C#】C#中使用GDAL3(二):Windows下读写Shape文件及超详细解决中文乱码问题
    【C#】C#中使用GDAL3(一):Windows下超详细编译C#版GDAL3.3.0(VS2015+.NET 4+32位/64位)
    k8s使用私有镜像仓库
    四、Abp vNext 基础篇丨领域构建
    Abp vNext 番外篇-疑难杂症丨认证授权
    三、Abp vNext 基础篇丨分层架构
    知识全聚集 .Net Core 目录篇
  • 原文地址:https://www.cnblogs.com/koukouStar/p/14535000.html
Copyright © 2011-2022 走看看