用卷积神经网络提取图像特征

author author     2023-03-25     158

关键词:

参考技术A 前面讲到的都是基于知识的图像特征提取方法,除此之外还有另一条技术路线——基于深度学习的图像特征提取。

人在认知图像时是分层抽象的,首先理解的是颜色和亮度,然后是边缘、角点、直线等局部细节特征,接下来是纹理、几何形状等更复杂的信息和结构,最后形成整个物体的概念。
视觉神经科学(Visual Neuroscience)对于视觉机理的研究验证了这一结论,动物大脑的视觉皮层具有分层结构。眼睛将看到的景象成像在视网膜上,视网膜把光学信号转换成电信号,传递到大脑的视觉皮层(Visual cortex),视觉皮层是大脑中负责处理视觉信号的部分。1959年,David和Wiesel进行了一次实验,他们在猫的大脑初级视觉皮层内插入电极,在猫的眼前展示各种形状、空间位置、角度的光带,然后测量猫大脑神经元放出的电信号。实验发现,不同的神经元对各种空间位置和方向偏好不同。这一成果后来让他们获得了诺贝尔奖。
目前已经证明,视觉皮层具有层次结构。从视网膜传来的信号首先到达初级视觉皮层(primary visual cortex),即V1皮层。V1皮层简单神经元对一些细节、特定方向的图像信号敏感。V1皮层处理之后,将信号传导到V2皮层。V2皮层将边缘和轮廓信息表示成简单形状,然后由V4皮层中的神经元进行处理,它颜色信息敏感。复杂物体最终在IT皮层(inferior temporal cortex)被表示出来。

卷积神经网络可以看成是上面这种机制的简单模仿。它由多个卷积层构成,每个卷积层包含多个卷积核,用这些卷积核从左向右、从上往下依次扫描整个图像,得到称为特征图(feature map)的输出数据。网络前面的卷积层捕捉图像局部、细节信息,有小的感受野,即输出图像的每个像素只利用输入图像很小的一个范围。后面的卷积层感受野逐层加大,用于捕获图像更复杂,更抽象的信息。经过多个卷积层的运算,最后得到图像在各个不同尺度的抽象表示。

顾名思义,卷积层由一组卷积单元(又称"卷积核")组成,可以把这些卷积单元理解为过滤器,每个过滤器都会提取一种特定的特征,方法参见 图像卷积 。

卷积层的过滤器负责从图像中查找规律,过滤器越多则参数越多,这意味着卷积层的维度可能很庞大。我们需要一种方法来降低维数,这就是卷积网络中的池化层(又名"下采样层")所扮的角色。

池化主要有3种形式:一般池化,重叠池化和金字塔池化。

池化窗口的尺寸为n*n,一般情况下池化窗口都是正方形的。步长(stride)等于n。此时池化窗口之间是没有重叠的。对于超出数字矩阵范围的,只计算范围内的或者范围外的用0填充再计算。又可以分为最大值池化,均值池化。

池化窗口范围内的最大值作为采样的输出值。
假如输入是一个4×4矩阵,执行最大池化是一个2×2矩阵,每次滑动2步。执行过程非常简单,把4×4的输入拆分成不同的区域,把这些区域用不同颜色来标记。对于2×2的输出,输出的每个元素都是其对应颜色区域中的最大元素值。

普通均值池化就是将池化窗口范围内的平均值作为采样的输出值。这种池化不如最大池化常用。

池化窗口之间有重叠。也就是步长大于等于1小于n,计算和一般池化是一样的。

空间金字塔池化(Spatial Pyramid Pooling,简称SPP)可以将尺寸大小不一样的图片转换为同样的尺寸。
SPP首先把图片看成1块,对这1块进行最大值池化,得到1个值,分成4块,对这4块分别进行最大值池化,得到4个值;分成16块,对这16块分别进行最大值池化,得到16个值,以此类推。这样就可以保证对于不同尺寸的图片而言,最终得到的值的个数是一样的。因为是最大值池化,超出范围的用不用0填充不会影响结果。

直接对原始图像做卷积,会存在两个问题。一是每次卷积后图像(特征图)都会缩小,这样卷不了几次就没了; 二是相比于图片中间的点,图片边缘的点在卷积中被计算的次数很少,导致边缘的信息易于丢失。
为了解决这个问题,我们可以采用填充的方法。我们每次卷积前,先给图片周围都补一圈空白,让卷积之后图片跟原来一样大,同时,原来的边缘也被计算了更多次。

比如,我们把(8,8)的图片给补成(10,10),那么经过(3,3)的filter之后,就是(8,8),没有变。
能够保证输入的数据和输出的数据具有相同的空间尺寸,假设零填充个数为p,卷积核为f * f,卷积核滑动步长为s,则p应设置为

假设原始输入图像为m * m,输出图像为n * n,零填充个数为p,卷积核为f * f,卷积核滑动步长为s,则输出尺寸为

假设输入图像为(m,m,d),其中d为图像深度(通道数),卷积核为f * f,卷积核个数为n,则weight个数为

bias个数:

池化层很少使用零填充。假设原始输入图像为m * m,输出图像为n * n,卷积核为f * f,卷积核滑动步长为s,则输出尺寸为

原来cnn是这样提取图像特征的。。。

...如何工作的,以及概述了反向传播的过程,将让你对卷积神经网络CNN提取图像特征有一个透彻的理解。那么我们首先从最基本的数学计算——卷积操作开始。1.卷积操作假设有一个55的图像,使用一个33的卷积核(filter)进行卷积... 查看详情

卷积神经网络如何提取特征(代码片段)

图像在计算机中的存储图像其实就是一个像素值组成的矩阵。1、黑白或灰度图像如何存储在计算机中在这里,我们已经采取了黑白图像,也被称为一个灰度图像。这是数字8的图像。现在,如果我们进一步放大并且仔... 查看详情

一文让你彻底了解卷积神经网络

介绍卷积神经网络(ConvolutionalNeuralNetwork,CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。它包括卷积层(convolutionallayer)和池化层(poolinglayer)。对比:卷积神经网... 查看详情

一文让你彻底了解卷积神经网络

卷积神经网络(ConvolutionalNeuralNetwork,CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。它包括卷积层(convolutionallayer)和池化层(poolinglayer)。对比:卷积神经网络、... 查看详情

卷积神经网络的卷积层如何提取特征?

...个什么概念?3.卷积层如何能做到智能提取特征?4.卷积神经网络,我看很多实例都是来识别图片什么的?那意思是该算法一般也是应用于人脸识别、图像识别这块么?参考技术A提取特征不一定是分三层,觉得特征值不够好,可以... 查看详情

卷积神经网络的一些细节思考(卷积池化层的作用)

卷积神经网络由卷积核来提取特征,通过池化层对显著特征进行提取,经过多次的堆叠,得到比较高级的特征,最后可以用分类器来分类。这是CNN的一个大概流程,其具体实现的结构是丰富多样的,但总的... 查看详情

卷积神经网络的一些细节思考(卷积池化层的作用)

卷积神经网络由卷积核来提取特征,通过池化层对显著特征进行提取,经过多次的堆叠,得到比较高级的特征,最后可以用分类器来分类。这是CNN的一个大概流程,其具体实现的结构是丰富多样的,但总的... 查看详情

使用 PCA 进行图像分析/特征提取

...家好:我阅读了几篇关于使用PCA进行特征提取,然后使用神经网络对图像进行分类的论文。但我意识到PCA采用2D数据,而卷积网络采用3D数据。现在,我可以将图像重塑为2D并运行PCA,但我不知道如何将结果输入到卷积网络中。提... 查看详情

卷积理论知识

...讲解理论知识比有些博客容易理解很多,这里记一篇卷积神经网络理论知识原地址:https://zhuanlan.zhihu.com/p/50800849原来CNN是这样提取图像特征的。。。对于即将到来的人工智能时代,作为一个有理想有追求的程序员,不懂深度学... 查看详情

cnn卷积神经网络

CNN是一种多层神经网络,基于人工神经网络,在人工神经网络前,用滤波器进行特征抽取,使用卷积核作为特征抽取器,自动训练特征抽取器,就是说卷积核以及阈值参数这些都需要由网络去学习。图像可以直接作为网络的... 查看详情

cnn----卷积为何能提取图像特征

...特征,将得到很小的值三、高层特征对原图进行的第一次卷积,经过池化以后得到的特征图,是特征激活图。第二层的卷积,就是被激活特征的组合  查看详情

卷积神经网络(代码片段)

卷积神经网络卷积神经网络全貌卷积层:提取局部特征卷积:滑动加权求和过滤器:提取特征padding:填补矩阵维度卷积步长:图像提取的精度3D卷积池化层:压缩提纯 卷积神经网络全貌神经网络在理论上&... 查看详情

卷积神经网络(代码片段)

卷积神经网络卷积神经网络全貌卷积层:提取局部特征卷积:滑动加权求和过滤器:提取特征padding:填补矩阵维度卷积步长:图像提取的精度3D卷积池化层:压缩提纯 卷积神经网络全貌神经网络在理论上&... 查看详情

卷积神经网络

参考技术A卷积神经网络(ConvolutionalNeuralNetworks,CNN)是一种前馈神经网络。卷积神经网络是受生物学上感受野(ReceptiveField)的机制而提出的。感受野主要是指听觉系统、本体感觉系统和视觉系统中神经元的一些性质。比如在视... 查看详情

卷积神经网络(convolutionalneuralnetworks,cnn)——更有效率地提取特征

参考技术A卷积神经网络(ConvolutionalNeuralNetworks,CNN)——更有效率地提取特征图像识别问题本质上就是分类问题,比如我们要区分猫和狗,那么我们就需要构建一个模型,将照片丢进去后,模型能输出猫或者狗的概率有多大。在做... 查看详情

cnn卷积神经网络基础理论知识

目录卷积卷积神经网络特征图感受野CNN特点局部卷积参数共享多卷积核池化处理多通道多层处理卷积说到卷积,就不得不提互相关(cross-orrelation)。卷积实质就是一种互相关运算,只不过要在进行互相关运算前,要把(kernal)上下左... 查看详情

深度学习——cnn卷积神经网络

引言我们知道,如果将全连接的神经网络应用到图像上是非常困难的,因为如果是1000x1000像素的图片,参数量可能就上亿了。我们能否能设计一种网络,可以减少我们的参数量。实际上,我们的眼睛是先找出... 查看详情

卷积的特征提取与参数计算(代码片段)

...口中发现的模式(pattern)。这个重要特性使卷积神经网络具有两个有趣的性质:1.卷积神经网络学到的模式具有平移不变性。卷积神经网络在图像右下角学到某个模式后,它可以在任何地方识别这个模式,比... 查看详情