精华内容
下载资源
问答
  • 图像处理卷积模板

    千次阅读 2013-04-25 23:17:41
    1.使用模板处理图像相关概念:   模板:矩阵方块,其数学含义是一种卷积运算。  卷积运算:可看作是加权求和的过程,使用到的图像区域中的每个像素分别与卷积核(权矩阵)的每个元素对应相乘,所有乘积之和...

    1.使用模板处理图像相关概念:      

         模板:矩阵方块,其数学含义是一种卷积运算。

      卷积运算:可看作是加权求和的过程,使用到的图像区域中的每个像素分别与卷积核(权矩阵)的每个元素对应相乘,所有乘积之和作为区域中心像素的新值。

         卷积核:卷积时使用到的权,用一个矩阵表示,该矩阵与使用的图像区域大小相同,其行、列都是奇数,是一个权矩阵。

         卷积示例:

                 假设3 * 3的像素区域R与卷积核G分别为:

    图像处理基础 - royinchina - 八字方针

    则卷积运算为:

                  R5(中心像素)=R1G1 + R2G2 + R3G3 + R4G4 + R5G5 + R6G6 + R7G7 + R8G8 + R9G9

    2、使用模板处理图像时涉及到的问题:

          边界问题:当处理图像边界像素时,卷积核与图像使用区域不能匹配,卷积核的中心与边界像素点对应,卷积运算将出现问题。

          处理办法:

                  A.忽略边界像素,即处理后的图像将丢掉这些像素。

                  B.保留原边界像素,即copy边界像素到处理后的图像。

     

    3、常用模板:

          (a)低通滤波器

                        图像处理基础 - royinchina - 八字方针     图像处理基础 - royinchina - 八字方针    图像处理基础 - royinchina - 八字方针
     

       (b)高通滤波器                 

                     图像处理基础 - royinchina - 八字方针   图像处理基础 - royinchina - 八字方针   图像处理基础 - royinchina - 八字方针

       (c)平移和差分边缘检测

                   图像处理基础 - royinchina - 八字方针   图像处理基础 - royinchina - 八字方针   图像处理基础 - royinchina - 八字方针 

        (d)匹配滤波边缘检测

                   图像处理基础 - royinchina - 八字方针     图像处理基础 - royinchina - 八字方针   

     

        (e)边缘检测

                  图像处理基础 - royinchina - 八字方针    图像处理基础 - royinchina - 八字方针    图像处理基础 - royinchina - 八字方针   图像处理基础 - royinchina - 八字方针  

     

        (f)梯度方向边缘检测

                 图像处理基础 - royinchina - 八字方针   图像处理基础 - royinchina - 八字方针   图像处理基础 - royinchina - 八字方针   图像处理基础 - royinchina - 八字方针

     

                图像处理基础 - royinchina - 八字方针   图像处理基础 - royinchina - 八字方针   图像处理基础 - royinchina - 八字方针   图像处理基础 - royinchina - 八字方针

      

    4、我们来看一下一维卷积的概念.

        卷积(convolution,另一个通用名称是德文的Faltung)的名称由来,是在于当初定义它时,定义成integ(f1(v)*f2(t-v))dv,积分区间在0到t之间。举个简单的例子,大家可以看到,为什么叫“卷积”了。比方说在(0,100)间积分,用简单的辛普生积分公式,积分区间分成100等分,那么看到的是f1(0)和f2(100)相乘,f1(1)和f2(99)相乘,f1(2)和f2(98)相乘,.........等等等等,就象是在坐标轴上回卷一样。所以人们就叫它“回卷积分”,或者“卷积”了。

        连续空间的卷积定义是f(x)与g(x)的卷积是f(t-x)g(x)在t从负无穷到正无穷的积分值.t-x要在f(x)定义域内,所以看上去很大的积分实际上还是在一定范围的.
           实际的过程就是f(x)先做一个Y轴的反转,然后再沿X轴平移t就是f(t-x),然后再把g(x)拿来,两者乘积的值再积分.想象一下如果g(x)或者f(x)是个单位的阶越函数.那么就是f(t-x)与g(x)相交部分的面积.这就是卷积了.

        卷积运算满足交换律,也就是说:f与g进行卷积完全等于g与f进行卷积。

       由两个函数f和g进行卷积而得到的函数f*g,一般要比原来的f和g都要光滑。所以在图像处理中对图像进行卷积后会使原图像模糊。因为卷积具有平滑作用。

        有趣的是,如果把两个人的照片互相进行卷积,所得到的照片,就同时和这两个人都很相像。

    把积分符号换成求和就是离散空间的卷积定义了.

       那么在图像中卷积是什么意思呢,就是图像就是图像f(x),模板是g(x),然后将模版g(x)在模版中移动,每到一个位置,就把f(x)与g(x)的定义域相交的元素进行乘积并且求和,得出新的图像一点,就是被卷积后的图像.模版又称为卷积核.卷积核做一个矩阵的形状。

    5、卷积运算时的核函数

          在Matlab中,对图像进行卷积运算时,都要先得到一个核函数,其实就是模板。其函数调用是:

    >> G=fspecial('gaussian',5,0.5)

    G =

         0.0000    0.0000    0.0002    0.0000    0.0000

        0.0000    0.0113    0.0837    0.0113    0.0000

        0.0002    0.0837    0.6187    0.0837    0.0002

        0.0000    0.0113    0.0837    0.0113    0.0000

         0.0000    0.0000    0.0002    0.0000    0.0000

    >> G=fspecial('gaussian',5,1.5)

    G =

        0.0144    0.0281    0.0351    0.0281    0.0144

       0.0281    0.0547    0.0683    0.0547    0.0281

       0.0351    0.0683    0.0853    0.0683    0.0351

       0.0281    0.0547    0.0683    0.0547    0.0281

       0.0144    0.0281    0.0351    0.0281    0.0144

        能够看出来,fspesial()函数的第一个参数表示返回高斯核函数(低通滤波器、模板等名称其实都一样)。第二个参数“5”表示该模板的大小,是5X5的矩阵。第三个参数是sigma了。

     

    OpenCV_颜色直方图的计算、显示、处理、对比及反向投影 http://www.cnblogs.com/slysky/archive/2011/10/14/2212227.html

    OpenCV_颜色直方图的计算、显示、处理、对比及反向投影

    展开全文
  • 数字图像处理卷积模板

    千次阅读 2017-10-21 19:21:45
    1、一维信号的卷积 ...第二步,把g(-x)向右平移a个单位得到g(a-x)的图像,如果两个图像有交叉部分,那么交叉部分的面积就是卷积。  上面说的是一维连续信号,如果是一维离散信号呢,因为积分是求和的极限,那么

    1、一维信号的卷积
      卷积是一种是数学运算,对于一维连续信号f(x)来说,f(x)和g(x)的卷积是一种积分运算,如下
      这里写图片描述
      它的几何意义是这样的:第一步,先把g(x)关于原点对称,得到g(-x);第二步,把g(-x)向右平移a个单位得到g(a-x)的图像,如果两个图像有交叉部分,那么交叉部分的面积就是卷积。
      上面说的是一维连续信号,如果是一维离散信号呢,因为积分是求和的极限,那么对于离散信号的卷积就是一种求和运算。对于离散信号x(n)和h(n)来说,他们的卷积如下
      这里写图片描述
      几何过程也是类似的。先关于远点对称,在平移,只不过只能平移整数个单位,因为是离散信号,再相乘再相加。
    2、一维信号的卷积有什么用
      对于信号处理来说,基本的模型是输入信号,处理信号,输出信号这个过程,不管什么信号,总得有输出,从输入到输出的过程都叫信号处理过程,其中包含的噪声、滤波等等都是这个过程中发生的事情。可以证明(谁证明的就不知道了),假设输入信号叫x,处理信号对应的系统函数叫h,那么输入信号等于x和h的卷积。(具体的证明见信号和系统这本书)。
      但是卷积是积分运算,计算起来比较麻烦,所以能不能不通过卷积运算就能把输出信号算出来呢?能!就是通过变换域的方法,什么叫变换域,在正常处理中我们的信号都是关于时间t的信号,也就是说是自变量是t,我们叫时间域(就类似于定义域)。通过一种可逆的变换把时间域变换到别的域(比如傅里叶变换,拉普拉斯变换),从别的域进行处理,再反变换(因为我们需要的是时间域的东西,所以必须得可逆)回来。傅里叶变换和拉普拉斯变换分别是把时间域(简称时域)变换到频率域和s域(就是指变换之后的自变量是频率和s),可以证明(证明过程见信号和系统书吧):时域的卷积相当于频域(s域)的相乘。
      所以,对于信号的处理可以在时域处理,也可以在变换域处理。
    3、数字图像的卷积
      数字图像在实质上就是一个二维数组,在信号的角度上来说是二维离散信号,只不过自变量不是时间,而是空间像素点了,所以正常需要处理的是空间域,类比二维信号也有变换域(频域,小波域等等),对于二维信号的处理也有如下结论:处理后的图像g(x,y)等于输入图像f(x,y)和处理过程h(x,y)的卷积。其中A矩阵和B矩阵的卷积如下。
      这里写图片描述
      数字图像进行卷积干吗用?主要用来图像增强和去噪。
    4、几个常用术语
      模板:模板就是一个矩阵(其实就是下面说的卷积核),也就是处理图像这个过程对应的函数,对应卷积运算。
      卷积运算:可以看做加权求和的过程,为了图像增强和减少噪声,用该像素点的邻域像素点进行加权,得到处理完之后这个点的像素点(会把噪声减弱,当然也会有别的问题)。
      卷积核:上面不是说了卷积运算了嘛,这个点的邻域和哪个矩阵进行加权啊?换句话说,这个点的邻域那么多像素点,这些像素点所占的权重是多少啊?这些权重构成一个矩阵,这个矩阵就叫卷积核,卷积核的行数和列数都是奇数。
      比如要对R5这个像素点进行卷积运算,有下面的式子成立,这个卷积核的数组直接决定卷积的结果。
      这里写图片描述
      使用卷积核的时候回出现一个问题——边界问题:当处理图像边界像素时,卷积核与图像使用区域不能匹配,卷积核的中心与边界像素点对应, 卷积运算将出现问题。
      处理办法:
    A. 忽略边界像素,即处理后的图像将丢掉这些像素。
    B. 保留原边界像素,即copy边界像素到处理后的图像。

    5、常用的模板
    这里写图片描述
    这里写图片描述

    展开全文
  • 文章目录本次我们来谈一下图像处理卷积基础(java语言)首先我们来接触一下卷积的基础理论下面我们来看一些常见的算子或效果的卷积核产生的效果吧 本次我们来谈一下图像处理卷积基础(java语言) 多图预警 首先...

    本次我们来谈一下图像处理的卷积基础(java语言)

    多图预警

    首先我们来接触一下卷积的基础理论

    卷积我们可以看成两个矩阵进行一定规律的计算(这里不是矩阵相乘啥的),其中有一个模板矩阵,我们称之为卷积核
    such as this
    在这里插入图片描述
    但是深度学习图像处理中的卷积操作是与数学概率论中的卷积操作有着一定的区别的,数学的卷积需要进行卷积核翻转,但图像处理中大部分情况下是直接的一对一相乘而不翻转,即计算方法有着区别

    而卷积操作基本是分成三步
    1、输入(input)
    2、卷积计算(也叫做特征提取)
    3、输出(output,也叫做特征映射)

    首先是输入,图像处理中我们输入的是图像的颜色参数(rgb)
    在这里插入图片描述
    然后我们进行卷积
    卷积操作为卷积核与像素点的元素对应相乘
    卷积
    其中蓝色矩阵代表输入的矩阵,深蓝色中的小数字组成的矩阵是卷积核
    在图像中是这个样子的
    在这里插入图片描述

    在这里插入图片描述
    通过卷积操作我们可以将两个二维数组变成一个具有特定意义的数(在这里是某块像素区域的R值加权和,权由卷积核决定,这种操作在图像中也叫做线性滤波),然后可以将卷积产生的数字赋给一个位置(通常赋给被处理矩阵的中心位置),在这里我们赋到中心位

    将卷积核在整个图像中滑遍,即可将整个图像进行特征提取,如图所示(由下到上)
    在这里插入图片描述
    在这里插入图片描述
    将整个图像处理完之后,我们会发现一个问题:
    图像边缘的像素点是没有处理到的(如图)
    在这里插入图片描述
    会有几种常见的办法处理图像边缘
    1、直接舍掉边缘未处理区域,也就是说输出的只有绿色部分,当然这种办法无法输出全部图像,因而很少使用
    2、Padding(填充周围):使用一些假像素(通常是0)来填充边缘,从而产生与输入相同大小的输出。 (借鉴数字图像处理中滤波和卷积操作详细说明)这位博主的边缘处理
    在这里插入图片描述
    3、Striding(步幅增大):使用更大的滑动步幅,常见于图像缩小时(池化)的操作,这里不再赘述
    (4、不管边缘,就是如果边缘占比足够小而且对输出结果没啥影响时的操作)

    通过边缘的处理,我们最终会得到处理后的图像数据,特征提取完成,输出即可完成特征映射(在这篇文章中我将图像显示当成特征映射)

    二维卷积(即两个矩阵的操作)常见于灰度图的操作(例如3*3的卷积核与3x3的处理区域),三维卷积由于有三个需要处理的像素区域(即r,g,b,3x3x3),因而常见于处理彩色图像,我们在这里操作的大部分是三维的彩色图像

    卷积的部分代码如下(以锐化为例,边缘处理代码暂无)

    		//对于不同的功能设置不同大小的矩阵
    		if(text.equals("锐化")){size = 3;}	
    		//锐化卷积核
    		double[][] sharpening = {{-1,-1,-1},{-1,9,-1},{-1,-1,-1}};
    		//下面开始搞卷积算法
    		//初始化rgb数组
    		R = new int[size][size];
    		G = new int[size][size];
    		B = new int[size][size];
    		//对应3*3的像素格子进行卷积计算
    		for(int x = 0;x < width-size+1;x++){
    			for(int y = 0;y < height-size+1;y++){
    			//设置三个值分别存储r,g,b的特征值,一定要在循环内部进行初始化0,这样才能每次有不同的值
    				int resultOfR = 0;
    				int resultOfG = 0;
    				int resultOfB = 0;
    				//将格子的rgb值都取出,便于之后的卷积操作
    				for(int j = 0;j <size;j++){
    					for(int i = 0;i < size;i++){
    						//将该点的RGB信息取出,放到变量中待操作
    						int argb = rgbOfImg[x][y];
    						//分段获取其R,G,B信息
    						//int变量共4位32字节,0位对应透明度(A),1位对应R值,2位对应G值,3位对应B值
    						//>>操作:将二进制代码向右移动,左边空位根据符号补充,正号为0,负号为1,右边超过范围的全部舍弃
    						//&:二进制位与运算符,只有两个变量对应值均为1时该位才返回1,0xff表示全为1的十六进制数(11111111),因此任何与0xff进行位与的结果均为其本身
    						//先移位后取位与可以将不同值对应的位信息取出,位与的意义是只取32字节的后8字节
    						R[i][j] = argb>>16 & 0xff;
    						G[i][j] = argb>>8  & 0xff;
    						B[i][j] = argb     & 0xff;
    					}
    				}
    				if(text.equals("锐化")){
    					//分别对R,G,B进行卷积操作,对应相乘后加起来
    					for(int j = 0;j < size;j++){
    						for(int i = 0;i < size;i++){
    							resultOfR += (int)(sharpening[i][j]*R[i][j]);
    						}	
    					}
    					for(int i = 0;i < size;i++){
    						for(int j = 0;j < size;j++){
    							resultOfG += (int)(sharpening[i][j]*G[i][j]);
    		
    						}
    					}				
    					for(int i = 0;i < size;i++){
    						for(int j = 0;j < size;j++){
    							resultOfB += (int)(sharpening[i][j]*B[i][j]);
    						}
    					}
    				}
    				//如果超过了rgb的界限(0-255),将其按照最大值或最小值处理
    				if(resultOfR > 255)resultOfR = 255;
    				if(resultOfR < 0)resultOfR = 0;
    				if(resultOfG > 255)resultOfG = 255;
    				if(resultOfG < 0)resultOfG = 0;
    				if(resultOfB > 255)resultOfB = 255;
    				if(resultOfB < 0)resultOfB = 0;
    				//根据该rgb值创建颜色对象
    				Color color = new Color(resultOfR, resultOfG, resultOfB);
    				//设置颜色,其中graphics是图像的画布(见BufferedImage类与Graphics类)
    				graphics.setColor(color);
    				//画像素点(drawline用来画线,这里的起始与终点都是同一点,因此可以用来画像素点)
    				//size/2用来将像素点赋到中心元上
    				graphics.drawLine(x+size/2, y+size/2, x+size/2, y+size/2);
    				}
    		}
    
    下面我们来看一些常见的算子或效果的卷积核产生的效果吧

    首先说明:卷积核内的数据相加为1时亮度不变,小于1时亮度降低,大于1时亮度升高

    锐化
    在这里插入图片描述
    在这里插入图片描述

    平滑模糊
    在这里插入图片描述
    在这里插入图片描述
    高斯模糊(在这里先不详述如何生成高斯模板,有兴趣的同学可以看我的文章内高斯模板的相关内容)
    这里使用5*5模板,看上去更有效果
    在这里插入图片描述
    在这里插入图片描述
    浮雕
    在这里插入图片描述
    在这里插入图片描述
    强调边缘
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • 图像处理——卷积、滤波的整理

    千次阅读 2015-06-24 15:35:36
    1.使用模板处理图像相关概念:   模板:矩阵方块,其数学含义是一种卷积运算。  卷积运算:可看作是加权求和的过程,使用到的图像区域中的每个像素分别于卷积核(权矩阵)的每个元素对应相  乘,所有乘积之和作为...
    1.使用模板处理图像相关概念:     
    

          模板:矩阵方块,其数学含义是一种卷积运算。
        卷积运算:可看作是加权求和的过程,使用到的图像区域中的每个像素分别于卷积核(权矩阵)的每个元素对应相
     乘,所有乘积之和作为区域中心像素的新值。
        卷积核:卷积时使用到的权用一个矩阵表示,该矩阵与使用的图像区域大小相同,其行、列都是奇数,是一个权矩阵。
        卷积示例:
                  3 * 3 的像素区域R与卷积核G的卷积运算:
                  R5(中心像素)=R1G1 + R2G2 + R3G3 + R4G4 + R5G5 + R6G6 + R7G7 + R8G8 + R9G9

                

    2.使用模板处理图像的问题:


           边界问题:当处理图像边界像素时,卷积核与图像使用区域不能匹配,卷积核的中心与边界像素点对应,
                     卷积运算将出现问题。
           处理办法:
                  A. 忽略边界像素,即处理后的图像将丢掉这些像素。
                  B. 保留原边界像素,即copy边界像素到处理后的图像。

    3、常用模板:





    4、一维卷积的概念

    卷积(convolution,另一个通用名称是德文的Faltung)的名称由来,是在于当初定义它时,定义成

    integ(f1(v)*f2(t-v))dv,积分区间在0t之间。举个简单的例子,大家可以看到,为什么叫卷积了。

    比方说在(0100)间积分,用简单的辛普生积分公式,积分区间分成100等分,那么看到的是f1(0)

    f2(100)相乘,f1(1)f2(99)相乘,f1(2)f2(98)相乘,.........等等等等,就象是在坐标轴上回卷一样。

    所以人们就叫它回卷积分,或者卷积了。

        连续空间的卷积定义是f(x)g(x)的卷积是f(t-x)g(x)t从负无穷到正无穷的积分值.t-x要在f(x)定义域内,所以看上去很大的积分实际上还是在一定范围的.
           
    实际的过程就是f(x)先做一个Y轴的反转,然后再沿X轴平移t就是f(t-x),然后再把g(x)拿来,两者乘积的值再积分.想象一下如果g(x)或者f(x)是个单位的阶越函数.那么就是f(t-x)g(x)相交部分的面积.这就是卷积了.

        卷积运算满足交换律,也就是说:fg进行卷积完全等于gf进行卷积。

       由两个函数fg进行卷积而得到的函数f*g,一般要比原来的fg都要光滑。所以在图像处理中对图像进行卷积后会使原图像模糊。因为卷积具有平滑作用。

        有趣的是,如果把两个人的照片互相进行卷积,所得到的照片,就同时和这两个人都很相像。

    把积分符号换成求和就是离散空间的卷积定义了.

       那么在图像中卷积是什么意思呢,就是图像就是图像f(x),模板是g(x),然后将模版g(x)在模版中移动,每到一个位置,就把f(x)g(x)的定义域相交的元素进行乘积并且求和,得出新的图像一点,就是被卷积后的图像.模版又称为卷积核.卷积核做一个矩阵的形状。

    5、图像滤波

    像处理和分析的有效性和可靠性。(滤波就是要去除没用的信息,保留有用的信息,可能是低频,也可能是高频)

    (2)滤波的目的有两个:一是抽出对象的特征作为图像识别的特征模式;  另一个是为适应图像处理的要求,消除图像数字化时所混入的噪声。

    对滤波处理的要求有两条:一是不能损坏图像的轮廓及边缘等重要信息;二是使图像清晰视觉效果好。

    (3)图像的滤波方法: 

    (一)图像的滤波方法很多,主要可以分为频率域法和空间域法两大类。频率域法的处理是在图像的某种变换域内,对图像的变换系数值进行运算,然后通过逆变换获得增强图像。这是一种间接的图像滤波方法。空间滤波方法是一类直接的滤波方法,它在处理图像时直接对图像灰度作运算。

         <1>频率域滤波:是将图像从空间或时间域转换到频率域,再利用变换系数反映某些图像特征的性质进行图像滤波的方法。傅立叶变换是一种常用的变换。在傅立叶变换域,频谱的直流分量正比于图像的平均亮度,噪声对应于频率较高的区域,图像实体位于频率较低的区域。图像在变换具有的这些内在特性可被用于图像滤波。可以构造一个低通滤波器,使低频分量顺利通过而有效地阻于高频分量,即可滤除图像的噪声,再经过反变换来取得平滑的图像。

              低通的数学表达式如下式所示:
                                          

              式中F (u, v)一含有噪声的原图像的傅立叶变换;
              H (u, v)一为传递函数,也称转移函数(即低通滤波器);
              G (u, v)一为经低通滤波后输出图像的傅立叶变换。
              H滤波滤去高频成分,而低频信息基本无损失地通过。滤波后,经傅立叶变换反变换可得平滑图像,即
              选择适当的传递函数H (u, v),对频率域低通滤波关系重大。常用的传递函数有梯形函数、指数函数、巴特沃思函数等。
              频域常用的几种低通滤波器为理想低通滤波器(Ideal  circular Iow-passfilter)、巴特沃思(Butterworth)低通滤波器、指数低通滤波器及梯形低通滤波器。这些低通滤波器,都能在图像内有噪声干扰成分时起到改善的作用。
          <2>常用的平面空间域滤波法有两类:  

              一类是拟合图像的方法,包括n阶多项式拟合、离散正交多项式拟合、二次曲面拟合等多种方法; 

              另一类是平滑图像的方法,包括领域平均法、中值滤波法、梯度倒数加权法、选择式掩模法等。

    (二)按频率高低

          <1>高通滤波:边缘提取与增强。边缘区域的灰度变换加大,也就是频率较高。所以,对于高通滤波,边缘部分将被保留,非边缘部分将被过滤;

          <2>低通滤波:边缘平滑,边缘区域将被平滑过渡。

             附: 高斯滤波:高斯滤波是一种线性平滑滤波,即低通滤波,适用于消除高斯噪声,广泛应用于图像处理的减噪过程。通俗的讲,高斯滤波就是对整幅图像进行加权平均的过程,每一个像素点的值,都由本身和邻域内的其他像素值经过加权平均后得到。高斯平滑滤波器对于抑制服从正态分布的噪声非常有效。3×3的掩模如下:

                                                 1 2 1

                                                 2 4 2

                                                 1 2 1 * 1/16

    从结构化掩模中可以看到,处于掩模中心的位置比其他任何像素的权值都大,因此在均值计算中给定的这一像素显得更为重要。而距离掩模中心较远的像素就显得不太重要,这样做是为了减小平滑处理中的模糊。

    (三)线性与非线性滤波

     <1>线性滤波:线性滤波器的原始数据与滤波结果是一种算术运算,即用加减乘除等运算实现,如(1)均值滤波器(模板内像素灰度值的平均值)、(2)高斯滤波器(高斯加权平均值)等。由于线性滤波器是算术运算,有固定的模板,因此滤波器的转移函数是可以确定并且是唯一的(转移函数即模板的傅里叶变换)。

    <span style="font-size:18px;"> <2>非线性滤波:非线性滤波器的原始数据与滤波结果是一种逻辑关系,即用逻辑运算实现,如最大值滤波器、最小值滤波器、中值滤波器等,是通过比较一定邻域内的灰度值大小来实现的,没有固定的模板,因而也就没有特定的转移函数(因为没有模板作傅里叶变换),另外,膨胀和腐蚀也是通过最大值、最小值滤波器实现的。五种常见的非线性滤波算子,这五种滤波算子对不同的图像都会有不同的作用,最常用的是中值滤波,因为它的效果最好且信息损失的最少。</span>

    (1)极大值滤波

    极大值滤波就是选取像素点领域的最大值作为改点的像素值,有效率去了灰度值比较低的噪声,也可作为形态学里面的膨胀操作。

    极大值滤波可以表示为: Maximum(A)=max[A(x+i,y+j)]      (x,y)属于M

    注:(x+i,y+j)是定义在图像上的坐标,(i,j)是定义在模板M上的坐标。M即为运算的模板。

    (2)极小值滤波(与极大值滤波相反)

    (3)中点滤波

     中点滤波常用于去除图像中的短尾噪声,例如高斯噪声和均匀分布噪声。终点滤波器的输出时给定窗口内灰度的极大值和极小值的平均值;

     Midpoint(A)=(max[A(x+i,y+j)]+min[A(x+i,y+j)])/2         

     (x,y)属于M 注:(x+i,y+j)是定义在图像上的坐标,(i,j)是定义在模板M上的坐标。M即为运算的模板。

    (4)中值滤波

    中值滤波可以消除图像中的长尾噪声,例如负指数噪声和椒盐噪声。在消除噪声时,中值滤波对图像噪声的模糊极小(受模板大小的影响),中值滤波实质上是用模板内所包括像素灰度的中值来取代模板中心像素的灰度。中值滤波在消除图像内椒盐噪声和保持图像的空域细节方面,其性能优于均值滤波。

           Median(A)=Median[A(x+i,y+j)]              (x,y)属于M

    注:(x+i,y+j)是定义在图像上的坐标,(i,j)是定义在模板M上的坐标。M即为运算的模板。

    (5)加权中值滤波(中值滤波的改进)

    加权中值滤波是在中值滤波的基础上加以改进,其性能在一定程度上优于中值滤波。

     例:

     若模板的大小为5,那么这个模板就唯一确定为:

                 1  1  5   1   1   

                 1  1  5   1   1  

                 5  5  5   5   5   

                 1  1  5   1   1  

                 1  1  5   1   1   

        上图中的数字表式改点像素在序列中出现的次数。然后根据模板平滑图像。实验证明该方法好于传统中值滤波。当然还有其他方法;

    <span style="font-size:18px;">附:噪声
        高斯噪声:是指噪声服从高斯分布,即某个强度的噪声点个数最多,离这个强度越远噪声点个数越少,且这个规律服从高斯分布。高斯噪声是一种加性噪声,即噪声直接加到原图像上,因此可以用线性滤波器滤除。
        椒盐噪声:类似把椒盐撒在图像上,因此得名,是一种在图像上出现很多白点或黑点的噪声,如电视里的雪花噪声等。椒盐噪声可以认为是一种逻辑噪声,用线性滤波器滤除的结果不好,一般采用中值滤波器滤波可以得到较好的结果</span>

    3.图像平滑

    图像平滑 image smoothing: 压制、弱化或消除图像中的细节、突变、边缘和噪声,就是图像平滑化。图像平滑是对图像作低通滤波,可在空间域或频率域实现。空间域图像平滑方法主要用低通卷积滤波、中值滤波等;频率域图像平滑常用的低通滤波器有低通梯形滤波器、低通高斯滤波器、低通指数滤波器、巴特沃思低通滤波器等。

    关系:

    图像卷积:一种实现手段,不管是滤波还是别的什么,可以说是数学在图像处理的一种延伸。

    图像滤波:一种图像处理方法,来实现不同目的。

    图像平滑:实际上就是低通滤波。





    展开全文
  • 图像处理卷积的理解和简单示例

    千次阅读 2019-04-07 20:37:39
    通俗点说:卷积图像处理中的应用就是用一个模式矩阵和原图像矩阵相乘,得到一个新的矩阵作为卷积结果 (核:指一组权重的集合,它会应用在源图像的一个区域,并由此生成目标图像的一个像素。比如大小为7的核意味...
  • 图像处理-模板卷积的整理

    千次阅读 2018-09-19 13:26:33
    一:什么是卷积 离散卷积的数学公式可以表示为如下形式: f(x) = - 其中C(k)代表卷积操作数,g(i)代表样本数据, f(x)代表输出结果。 举例如下: 假设g(i)是一个一维的函数,而且代表的样本数为G = [1,2,3,4,5,6,...
  • [ 1 2 3 4 5 4 3 2 1] (《==原始向量)卷积 [ 2 0 -2] (《=卷积模板 ) 过程: [ 0 0 1 2 3 4 5 4 3 2 1 0 0] (零填充) [-2 0 2]《----[ 2 0 -2] (翻转180度) ↓ ...
  • 图像处理中的卷积模板

    千次阅读 2013-08-18 20:18:22
    图像处理中的卷积模板 1.使用模板处理图像相关概念:   模板:矩阵方块,其数学含义是一种卷积运算。  卷积运算:可看作是加权求和的过程,使用到的图像区域中的每个像素分别与卷积核(权矩阵)的每个元素...
  • 图像处理:基础(模板卷积运算) 1.使用模板处理图像相关概念:   模板:矩阵方块,其数学含义是一种卷积运算。  卷积运算:可看作是加权求和的过程,使用到的图像区域中的每个像素分别于卷积核(权矩阵)的...
  • 数字图像处理中的卷积: 数字图像是一个二维的离散信号,对数字图像做卷积操作其实就是利用 卷积核(卷积模板)在图像上滑动,将图像点上的像素灰度值与对应的卷积核上的数值相乘,然后将所有相乘后的值相加作为卷积...
  • 1.使用模板处理图像相关概念:   模板:矩阵方块,其数学含义是一种卷积运算。  卷积运算:可看作是加权求和的过程,使用到的图像区域中的每个像素分别于卷积核(权矩阵)的每个元素对应相  乘,所有乘积之和...
  • 模板:矩阵方块,其数学含义是一种卷积运算 卷积运算:可看做是加权求和的过程,使用到的图像区域中的每个像素分别于卷积核(权矩阵)的每个元素对应相乘,所有乘机之和作为区域中心像素的新值。 卷积核:卷积时用到...
  • 空域滤波是在图像空间借助模板进行邻域操作完成的。 ●根据其特点一般可分为线性和非线性2类; ●根据功能主要分成平滑和锐化2类:  ★平滑可用低通滤波器(低频,对应整体信息,灰度变化缓慢)实现。平滑的目的又...
  • 模板卷积Template Convolution

    千次阅读 2013-11-08 09:23:17
    图1所示,新图像是通过模板卷积从原图像计算得到的。对原图像上模板的中心像素进行模板卷积所得的计算结果成为输出图像中的点。由于模板不能超出图像,而无法计算新图像边界点的新值,所以新图像比原始图像小。当...
  • 图像处理卷积的FPGA设计 在FPGA上实现图像处理,根据处理图像数据的粒度,基本的可以分为以下三类: 基于像素点 基于单个像素点的操作最常见的就是黑电平校正、白平衡、色彩空间装换、全局gamma 基于图像块 基于...
  • 图像处理基础之卷积

    2014-03-12 20:16:54
    1.使用模板处理图像相关概念: 模板:矩阵方块,其数学含义是一种种卷积运算。 卷积运算:可看作是加权求和的过程,使用到的图像区域中的每个像素分别于卷积核(权矩阵)的每个元素对应相乘,所有乘积之和作为...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 417
精华内容 166
关键字:

图像处理模板卷积