3分钟读懂深度学习中的卷积运算与图像处理

在人工智能深度学习技术中,有一个很重要的概念就是卷积神经网络 CNN(Convolutional Neural Networks)。

卷积神经网络被广泛地运用到计算机视觉中,用于提取图像数据的特征,其中发挥关键作用的步骤就是卷积层中的卷积运算。

卷积到底是什么?深度学习中的卷积运算与传统的信号与系统中的卷积算子有什么不同?为什么卷积运算可以提取图像的特征呢?下3分钟带你读懂卷积运算与图像处理。

了解卷积运算

卷积神经网络中的核心即为 卷积运算,其相当于图像处理中的 滤波器运算。对于一个 m×n大小的卷积核:


卷积一词最开始出现在信号与系统中,是指两个原函数产生一个新的函数的一种算子。

卷积运算在运算过程可以概括为翻转、平移再加权求和三个步骤,其中的加权求和就是乘加操作。

另外,卷积运算还有一个重要的特性:空间域卷积=频域乘积,这一点可以解释为什么卷积运算可以自动地提取图像的特征。

在卷积神经网络中,对数字图像做卷积操作其实就是利用卷积核(黄底部分)在图像(绿底部分)上滑动,将图像上的像素灰度值与对应卷积核上的数值相乘,然后将所有相乘后的值相加作为此时的输出值(红底部分),并最终滑动遍历完整副图像的过程。

动图来源于stanford.edu, Feature extraction using convolution

仔细观察上述动图,图像中的卷积操作相比于信号与系统中的卷积少了点什么?

我们可以看到,图像中卷积的计算过程只有平移和乘加两个步骤,相对于信号与系统的卷积算子缺少了翻转。

那么,图像的卷积操作是否需要进行翻转呢?

事实上,深度学习中卷积核是无需进行翻转的,因为卷积核中的所有权重都是随机初始化,开始不是确定的。网络每次更新迭代都是为了寻找一个最合适的卷积核权重值,所以是否翻转也就无关紧要了。除此之外,图像处理中的卷积核一般是对称的,翻转也就显得不那么必要。

卷积神经网络被广泛运用到计算机视觉的最大一个原因,就是卷积层可以自动地提取图像特征。

提取图像特征

图像中的特征通常指代图像中物体的轮廓与纹理信息,而通常物体的细节(可以简单地理解为图像中像素点灰度值变换缓慢的地方)带来的信息量较少。我们通常所说的图像特征提取的过程是在保留图像轮廓和纹理的同时,去掉冗余信息的过程。


物体轮廓

物体纹理,图片来源The Berkeley Segmentation Dataset and Benchmark

那么如何区分图像的特征与图像的冗余信息量呢?

如下面这幅人物图像,如果我们不对原始图像做处理,很难将图像的特征与冗余信息量区分开来。

我们可以换一个角度,不从时空区域来区分,而是抓住图像细节和图像轮廓纹理的频率不一样这一特征,把一副图像放在频域中以区分图像的细节与图像的轮廓纹理。

我们将这幅人物图像(左)转换到频域中的该图像(右),离中心点越近的分量频率越低,离中心点越远的分量频率越高。

原图

频域图像,图片来源CMU, Computational Photography, Fall 2019

现在我们将用一个模板来分离高低频分量。

如左图所示的模板1中,其数值取值范围为0到1。模板中的点越黑其数值越接近于0,越白越接近于1.

将模板1与频域图像相乘后,就可以只保留高频部分去除离中心点较近的低频分量,再将图像转换回到空间域中,可以看到图像的高频分量(右)是轮廓和纹理特征。


模板1

高频分量,图片来源:CMU, Computational Photography, Fall 2019

同样的操作方式,将模板2与频域图像相乘,频域图中的低频分量可以被选取出来,再将低频分量转到空间域中,可以看到低频分量代表着细节特征。这时我们就可以成功地将图像的轮廓纹理细节信息从频率的角度分开来了。


模板2

低频分量,图片来源CMU, Computational Photography, Fall 2019

以上处理过程,实际就是在频域中将模板与频域图像相乘,以区分图像轮廓纹理与细节信息的过程。

而频域相乘就等于空间域卷积,这是刚才提及到的卷积的重要特性。那么上述在频域中的操作等同于空间中的图像与空间域中的模板做卷积,这样从频域的角度,就可以解释卷积操作能够提取图像特征的原因。

*本文内容整理于网络,转载此文目的在于传递更多信息,版权归原作者所有。

推荐阅读