[OpenCV] Image Processing - Fuzzy Set

使用模糊技术进行 (灰度变换Grayscale Transform) 和 (空间滤波Spatial Filtering)



模糊集合为处理不严密信息提供了一种形式。

首先,需要将输入量折算为隶属度,这个过程叫做“模糊化”。

然后,使用得到的隶属度来进行计算,或者判断,或者其他更复杂的算法。

最后,需要将隶属度再次折算为输出,这个过程称为“去模糊”或者“反模糊”。

使用模糊集合进行"灰度变换"

使用模糊集合来进行灰度变换,从而增强图像。首先可以在常理下考虑一下,一般的对于动态范围较小的图像,我们一般的处理的方法是灰度拉升,或者直方图均衡。

这两种的方法的本质就是,让原图较暗的像素更加暗,让原图较亮的像素更加亮。那么,我们规定如下模糊规则

R1:IF 一个像素是暗的,THEN 让这个像素更暗;

R2:IF 一个像素是灰的,THEN 让他保持是灰的;

R3:IF 一个像素是亮的,THEN 让这个像素更亮;

这个规则就代表了我们的处理方法。

当然,IF条件中的像素是暗的(或者灰的,或者是亮的),这个概念都是模糊的。

同理THEN结论中的更暗(或者保持灰的,或者更亮)亦是模糊的。

为此,我们需要确立一个隶属度函数,从而来判断一个像素对于三个条件的隶属度。

实际上,隶属度函数的确定是很复杂的,然而,这里我们则尽量想得简单一点。

首先,一个像素是暗的(模糊),那么其隶属度函数大致的形状是,

    • 在低于某个值的时候域隶属度为1,
    • 在灰度越过某一个值之后,其隶属度为0,
    • 当然

然后之间进行线性插值,那么,我们就可以得到R1的隶属度函数了。同理,R2与R3也是一样的。

为了简单起见,我们将THEN结论中的更暗设置为较为简单的函数。

    • 为了让这个像素更黑,其输出都为0。同理,
    • 为了使这个像素保持灰的,我们将其输出设为0.5,
    • 为了使得一个像素更亮,我们将其设置为1。

根据以上讨论,我们所决定的隶属度函数如下所示。

使用输入的隶属度函数,可以得到模糊化后的数据。

对于一个像素,需要根据规则R1,R2与R3,计算出所对应的隶属度

这个过程,称之为模糊化

将一个输入量模糊化,所使用的函数(或者说是对应关系),称之为知识库。

模糊集合的应用

有意思的表达方式,赞。

实例:

将隶属度函数重叠起来看,理解的重点:

关键就在这里,自定义了一个标准,这就是精髓。

结合公式来看,理解公式的含义:

得到一个权值衡量后的成熟度估计值,最为输出值。

但这样是不是计算量太大了点,对于每一幅图像,毕竟这么多像素要逐个计算。

但效果看上去还是不错的。


使用模糊集合进行"空间滤波"

模糊规则:

         

实例:

时间: 2024-12-29 06:54:14

[OpenCV] Image Processing - Fuzzy Set的相关文章

[OpenCV] Image Processing - Non-linear Filtering

如果不是高斯噪声,怎么办? 中值滤波 散离噪声通常位于邻域内正确值的两端. (a) original image with Gaussian noise; (b) Gaussian filtered; (c) median filtered; (d) bilaterally filtered; (e) original image with shot noise; (f) Gaussian filtered; (g) median filtered; (h) bilaterally filter

[OpenCV] Image Processing - Linear Filtering

"利用给定像素周围的像素的值决定此像素的最终的输出值“ 教学效果: 扩展阅读: 使用模糊技术进行 灰度变换 和 空间滤波 . 线性空间滤波 Some neighborhood operations (邻域算子): (a) original image; (b) blurred; (c) sharpened; (d) smoothed with edge-preserving filter; (e) binary image; (f) dilated; (g) distance transform

Computer Vision: OpenCV, Feature Tracking, and Beyond--From <<Make Things See>> by Greg

In the 1960s, the legendary Stanford artificial intelligence pioneer, John McCarthy, famously gave a graduate student the job of “solving” computer vision as a summer project. It has occupied an entire community of academic researchers for the past 4

因素空间发展评述

因素空间发展评述      刘海涛1,包研科1,郭嗣琮1,何华灿2, 何平3 (1. 辽宁工程技术大学 智能工程与数学研究院, 辽宁 阜新 123000: 2. 西北工业大学 计算机学院,陕西 西安 710072: 3. 辽宁警官学院 信息系,辽宁 大连 116036) ——2016年3月 摘 要:为了适应信息革命和大数据时代的需要,模糊数学要更多地切入智能数据的领域. 在这方面,我国早期学者汪培庄教授提出了因素空间的数学理论,从服务于模糊数学的研究开始,进而转向认知描述,建立了知识表示的数学描

C# 通过Emgu CV播放流媒体(RTSP)

      Emgu CV is a cross platform .Net wrapper to the OpenCV image processing library. Allowing OpenCV functions to be called from .NET compatible languages such as C#, VB, VC++, IronPython etc. The wrapper can be compiled by Visual Studio, Xamarin S

Which is the best opencv or matlab for image processing?

http://www.researchgate.net/post/Which_is_the_best_opencv_or_matlab_for_image_processing Annette Morales-González · Centro de Aplicaciones de Tecnologias de Avanzada It depends on your purpose: Matlab --> Faster programming, less efficientOpenCV -->

The basic C interface in OpenCV for imagine processing

The basic C interface in OpenCV for imagine processing Creating a Window First, we want to show an image on the screen using HighGUI. Th e function that does this for us is cvNamedWindow() . Th e function expects a name for the new window and one fla

Image Processing in OpenCV (2)

4 Smoothing Images 4.1 目标 学习: 使用各种低通滤波器(low pass filters)模糊(Blur)图像 对图像使用自定义滤波器(2D convolutin) 4.2 2D卷积(图像滤波)(Image Filtering) 对于一维信号,图像也可以用各种低通滤波器(LPF).高通滤波器(HPF)等进行滤波.LPF有助于去除噪声或模糊图像. HPF过滤器有助于查找图像中的边缘. OpenCV提供了一个函数cv2.filter2D(),用于将内核与图像进行卷积.例如,我

OpenCV Tutorials —— Discovering the human retina and its use for image processing

将关于人类视网膜的发现应用于图像处理 ~ spectral whitening 频谱白化 that has 3 important effects: high spatio-temporal frequency signals canceling (noise), mid-frequencies details enhancement and low frequencies luminance energy reduction. This all in one property directly