卷积

卷积
卷积是一种线性运算,图像处理中常见的mask运算都是卷积,广泛应用于图像滤波。castlman的书对卷积讲得很详细。
高斯变换就是用高斯函数对图像进行卷积。高斯算子可以直接从离散高斯函数得到:
for(i=0; i<N; i++)
{
for(j=0; j<N; j++)
{
g[i*N+j]=exp(-((i-(N-1)/2)^2+(j-(N-1)/2)^2))/(2*delta^2));
sum += g[i*N+j];
}
}
再除以 sum 得到归一化算子
N是滤波器的大小,delta自选

首先,再提到卷积之前,必须提到卷积出现的背景。卷积是在信号与线性系统的基础上或背景中出现的,脱离这个背景单独谈卷积是没有任何意义的,除了那个所谓褶反公式上的数学意义和积分(或求和,离散情况下)。
信号与线性系统,讨论的就是信号经过一个线性系统以后发生的变化(就是输入 输出 和所经过的所谓系统,这三者之间的数学关系)。所谓线性系统的含义,就是,这个所谓的系统,带来的输出信号与输入信号的数学关系式之间是线性的运算关系。
因此,实际上,都是要根据我们需要待处理的信号形式,来设计所谓的系统传递函数,那么这个系统的传递函数和输入信号,在数学上的形式就是所谓的卷积关系。
卷积关系最重要的一种情况,就是在信号与线性系统或数字信号处理 中的卷积定理。利用该定理,可以将时间域或空间域中的卷积运算等价为频率域的相乘运算,从而利用FFT等快速算法,实现有效的计算,节省运算代价。
 
卷积神经网络中,卷积是把一个算子在原图上不断滑动,得出滤波结果,这个结果叫做“特征图”,这些算子被称为“卷积核”。卷积本质上是一种spatial filter(滤波),常见操作有平滑滤波和边缘提取,通过设计特定的“卷积核”与像素矩阵对应元素相乘得到结果 [^2][^3]。 数学中的卷积主要用于信号处理、求两个随机变量和的分布等,需要进行翻转再进行对应元素的加权求和;而卷积神经网络中的“卷积”是为了提取图像的特征,只借鉴了“加权求和”的特点,不需要翻转,其“卷积核”是可训练的参数,根据数据训练学习 [^2]。 在边缘提取方面,有一种卷积核研究较多,其卷积核内所有值求和为0。因为在边缘区域,图像像素值会发生突变,与这样的卷积核做卷积会得到一个不为0的值;而非边缘区域,像素值很接近,与这样的卷积核做卷积会得到一个约等于0的值 [^1]。 卷积核在深度学习中有重要应用,例如在图卷积神经网络(GCN)中,把卷积操作引入到了图学习中,将不同卷积核与节点之间建立空间连通关系,进而捕获节点间的特征相关性。GCN模型的原理包括对图进行预处理(图的邻接矩阵表示和归一化处理)、定义卷积核(定义一个多层的卷积神经网络,每层都是卷积层)、使用卷积核对节点进行卷积(更新节点特征得到新的特征表示) [^4]。 ### 代码示例 以下是一个简单的Python代码示例,使用`numpy`库实现一个简单的卷积操作: ```python import numpy as np def simple_convolution(image, kernel): image_height, image_width = image.shape kernel_height, kernel_width = kernel.shape output_height = image_height - kernel_height + 1 output_width = image_width - kernel_width + 1 output = np.zeros((output_height, output_width)) for i in range(output_height): for j in range(output_width): output[i, j] = np.sum(image[i:i+kernel_height, j:j+kernel_width] * kernel) return output # 示例图像和卷积核 image = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) kernel = np.array([[1, 0], [0, 1]]) # 执行卷积操作 result = simple_convolution(image, kernel) print(result) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值