CN113762297A - 一种图像处理方法及设备 - Google Patents
一种图像处理方法及设备 Download PDFInfo
- Publication number
- CN113762297A CN113762297A CN202010578086.1A CN202010578086A CN113762297A CN 113762297 A CN113762297 A CN 113762297A CN 202010578086 A CN202010578086 A CN 202010578086A CN 113762297 A CN113762297 A CN 113762297A
- Authority
- CN
- China
- Prior art keywords
- image
- layer
- point
- convolutional layer
- image data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/253—Fusion techniques of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及图像处理技术领域,公开了一种图像处理方法、介质及设备。本申请的图像处理方法包括:获取图像;图像在神经网络模型的输入层被处理成至少一层图像数据;将图像数据输入神经网络模型的隐含层进行处理,得到图像数据的局部高维特征数据,其中神经网络模型的隐含层包括多个处理单元,多个处理单元中至少部分处理单元彼此互联并且与输入层的输出相连;以及输出所述图像的特征映射,图像的特征映射由图像数据的局部高维特征池化融合得到。根据本申请所提供的技术方案,在图像处理的过程中,在图像处理的过程中,消除了信息丢失,有效缓解梯度混淆;减少了计算成本,有效的去除了神经网络中的冗余参数;降低了计算复杂度,提高了对图像的分类精度;所需计算机系统的内部结构可以更精简,使得图像处理在移动设备等轻量级神经网络中能够得以应用。
Description
技术领域
本申请涉及图像处理领域,特别涉及一种图像处理方法及图像处理装置。
背景技术
神经网络模型是一种由大量的节点(或称为神经元)相互联接组成的运算模型。常用的神经网络模型包括输入层、输出层以及多个隐含层(也称为隐层)。随着神经网络体积越来越大,结构越来越复杂,预测和训练需要的硬件资源也逐步增多,往往只能在高算力的服务器中运行深度学习神经网络模型。而轻量级神经网络模型使得在保证模型准确率的同时体积更小,速度更快,使在移动网络中运行神经网络模型成为可能。
反向残差块(Inverted residual block,简称IR块)在移动网络中占据主导地位,它通过引入两个设计规则来改变经典的残留瓶颈:反向残差学习和线性瓶颈的使用。瓶颈之间的连接会不可避免地带来信息丢失以及引起梯度混淆,削弱梯度在各层之间的传播,从而影响训练的收敛性以及模型的性能。
发明内容
本申请实施例提供了一种图像处理方法、图像处理装置、图像处理设备及计算机可读介质。
第一方面,本申请实施例提供了一种基于神经网络的图像处理方法,并且所述方法包括:
获取图像;
所述图像在所述神经网络模型的输入层被处理成至少一层图像数据;
将所述图像数据输入所述神经网络模型的隐含层进行处理,得到所述图像数据的局部高维特征数据,其中所述神经网络模型的隐含层包括多个处理单元,所述多个处理单元中至少部分处理单元彼此互联并且与所述输入层的输出相连;以及
输出所述图像的特征映射,所述图像的特征映射由所述图像数据的局部高维特征池化融合得到;
其中,在至少一个处理单元中,作为所述至少一个处理单元的输入的所述图像的高维特征数据依次经过由第一深度可分离卷积层、第一逐点卷积层、第二逐点卷积层以及第二深度可卷积层构成的快捷连接处理,输出所述图像的局部高维特征数据。
本申请中的技术方案与现有技术中的图像处理方法相比,在图像处理的过程中,
1)消除了信息丢失,有效缓解梯度混淆;
2)减少了计算成本,有效的去除了神经网络中的冗余参数;
3)降低了计算复杂度,提高了对图像的分类精度;
4)所需计算机系统的内部结构可以更精简,使得图像处理在移动设备等轻量级神经网络中能够得以应用。
在上述第一方面的一种可能的实现中,上述方法还包括:所述第一逐点卷积层对所述图像数据进行通道的缩减,以及所述第二逐点卷积层对所述第一逐点卷积层输出的图像数据进行通道的扩展。不但节省了参数和计算成本,还可以使用快捷连接而非瓶颈连接的方式连接具有大量通道的表示形式。
在上述第一方面的一种可能的实现中,上述方法还包括:在所述第一逐点卷积层和所述第二逐点卷积层之间不进行其他卷积操作。该结构将性能大大降低了1%以上。
在上述第一方面的一种可能的实现中,上述方法还包括:所述快捷连接是建立在所述图像数据的高维特征空间中,并提取所述图像数据的局部特征张量,得到所述图像数据的局部高维特征数据。
在上述第一方面的一种可能的实现中,上述方法还包括:对所述第一深度可分离卷积层输出的数据使用线性激活函数;对所述第一逐点卷积层输出的数据使用非线性激活函数;对所述第二逐点卷积层输出的数据使用线性激活函数;对所述第二深度卷积层输出的数据使用非线性激活函数。使得从输入张量到输出张量可传递更多信息,并允许更多的梯度跨多层传播。
在上述第一方面的一种可能的实现中,上述方法还包括:所述神经网络模型包括输入层、多个隐含层和输出层,所述隐含层进一步包括第一卷积层、全卷积层和全局平均池化层,全卷积层包括至少一个处理单元,其中,输入的所述图像经过包括32个输出通道的第一卷积层的处理,得到32个输出通道的所述图像数据的特征图;所述图像数据的特征图,经过所述全卷积层的处理,得到所述图像数据的局部高维特征数据;所述图像数据的局部高维特征数据经过全局平均池化层的处理,被池化为所述图像的特征映射。
第二方面,本申请实施例提供了一种图像处理装置,包括:
获取模块,获取图像;
处理模块,对所述图像进行基于神经网络模型的处理,得到所述图像数据的局部高维特征数据,所述处理模块包括多个处理单元,所述多个处理单元中至少部分处理单元彼此互联并且与输出相连;以及
输出模块,输出所述图像的特征映射,所述图像的特征映射由所述图像数据的局部高维特征池化融合得到;
其中,在至少一个处理单元中,作为所述至少一个处理单元的输入的所述图像的高维特征数据依次经过由第一深度可分离卷积层、第一逐点卷积层、第二逐点卷积层以及第二深度可卷积层构成的快捷连接处理,输出所述图像的局部高维特征数据。
在上述第二方面的一种可能的实现中,上述装置还包括:所述第一逐点卷积层对所述图像数据进行通道的缩减,以及所述第二逐点卷积层对所述第一逐点卷积层输出的图像数据进行通道的扩展。不但节省了参数和计算成本,还可以使用快捷连接而非瓶颈连接的方式连接具有大量通道的表示形式。
在上述第二方面的一种可能的实现中,上述装置还包括:在所述第一逐点卷积层和所述第二逐点卷积层之间不进行其他卷积操作。该结构将性能大大降低了1%以上。
在上述第二方面的一种可能的实现中,上述装置还包括:所述快捷连接是建立在所述图像数据的高维特征空间中,并提取所述图像数据的局部特征张量,得到所述图像数据的局部高维特征数据。
在上述第二方面的一种可能的实现中,上述装置还包括:对所述第一深度可分离卷积层输出的数据使用线性激活函数;对所述第一逐点卷积层输出的数据使用非线性激活函数;对所述第二逐点卷积层输出的数据使用线性激活函数;对所述第二深度卷积层输出的数据使用非线性激活函数。使得从输入张量到输出张量可传递更多信息,并允许更多的梯度跨多层传播。
在上述第二方面的一种可能的实现中,上述装置还包括:所述神经网络模型包括输入层、多个隐含层和输出层,所述隐含层进一步包括第一卷积层、全卷积层和全局平均池化层,全卷积层包括至少一个处理单元,其中,输入的所述图像经过包括32个输出通道的第一卷积层的处理,得到32个输出通道的所述图像数据的特征图;所述图像数据的特征图,经过所述全卷积层的处理,得到所述图像数据的局部高维特征数据;所述图像数据的局部高维特征数据经过全局平均池化层的处理,被池化为所述图像的特征映射。
第三方面,本申请实施例提供了一种图像处理设备,包括:
存储器,用于存储由系统的一个或多个处理器执行的指令,以及
处理器,是系统的处理器之一,用于执行所述指令以实施图像处理方法,所述图像处理方法包括:
获取图像;
所述图像在所述神经网络模型的输入层被处理成至少一层图像数据;
将所述图像数据输入所述神经网络模型的隐含层进行处理,得到所述图像数据的局部高维特征数据,其中所述神经网络模型的隐含层包括多个处理单元,所述多个处理单元中至少部分处理单元彼此互联并且与所述输入层的输出相连;以及
输出所述图像的特征映射,所述图像的特征映射由所述图像数据的局部高维特征池化融合得到;
其中,在至少一个处理单元中,作为所述至少一个处理单元的输入的所述图像的高维特征数据依次经过由第一深度可分离卷积层、第一逐点卷积层、第二逐点卷积层以及第二深度可卷积层构成的快捷连接处理,输出所述图像的局部高维特征数据。
在上述第三方面的一种可能的实现中,上述设备还包括:所述第一逐点卷积层对所述图像数据进行通道的缩减,以及所述第二逐点卷积层对所述第一逐点卷积层输出的图像数据进行通道的扩展。
在上述第三方面的一种可能的实现中,上述设备还包括:在所述第一逐点卷积层和所述第二逐点卷积层之间不进行其他卷积操作。
在上述第三方面的一种可能的实现中,上述设备还包括:所述快捷连接是建立在所述图像数据的高维特征空间中,并提取所述图像数据的局部特征张量,得到所述图像数据的局部高维特征数据。
在上述第三方面的一种可能的实现中,上述设备还包括:对所述第一深度可分离卷积层输出的数据使用线性激活函数;对所述第一逐点卷积层输出的数据使用非线性激活函数;对所述第二逐点卷积层输出的数据使用线性激活函数;对所述第二深度卷积层输出的数据使用非线性激活函数。
在上述第三方面的一种可能的实现中,上述设备还包括:所述神经网络模型包括输入层、多个隐含层和输出层,所述隐含层进一步包括第一卷积层、全卷积层和全局平均池化层,全卷积层包括至少一个处理单元,其中,输入的所述图像数据经过包括32个输出通道的第一卷积层的处理,得到32个输出通道的所述图像数据的特征图;所述图像数据的特征图,经过所述全卷积层的处理,得到所述图像数据的局部高维特征数据;所述图像数据的局部高维特征数据经过全局平均池化层的处理,被池化为所述图像的特征映射。
第四方面,本申请实施例提供了一种使用计算机程序编码的计算机可读存储介质,其特征在于,所述计算机可读介质上存储有指令,所述指令在计算机上执行时使计算机执行上述第一方面中的任意一种图像处理方法。
附图说明
图1根据本申请的一些实施例,示出了一种神经网络模型的结构示意图;
图2(a)根据本申请的一些实施例,示出了一种经典瓶颈残差块的结构示意图;
图2(b)根据本申请的一些实施例,示出了一种反向残差块的结构示意图;
图2(c)根据本申请的一些实施例,示出了一种处理单元的结构示意图;
图3根据本申请的一些实施例,示出了一种电子设备的结构框图;
图4根据本申请的一些实施例,示出了一种图像处理方法流程图;
图5(a)根据本申请的一些实施例,示出了一种标准卷积被深度可分离卷积代替的瓶颈结构的网络结构图;
图5(b)根据本申请的一些实施例,示出了一种标准卷积被两个深度可分离卷积代替的瓶颈结构的网络结构图;
图5(c)根据本申请的一些实施例,示出了一种切换处理单元中两个逐点卷积位置的网络结构图;
图5(d)根据本申请的一些实施例,示出了一种处理单元的网络结构图;
图6根据本申请的一些实施例,示出了一种具有深度可分离卷积的经典瓶颈结构与处理单元的网络结构对比图;
图7根据本申请的一些实施例,示出了一种图像处理装置的结构示意图;
图8(a)根据本申请的一些实施例,示出了一种用DARTS在CIFAR-10数据集上搜索正常细胞结构过程示意图;
图8(b)根据本申请的一些实施例,示出了一种用DARTS在CIFAR-10数据集上搜索缩减细胞结构过程示意图;
图9根据本申请的一些实施例,示出了一种用于图像处理的电子设备的结构示意图;
图10根据本申请的一些实施例,示出了一种电子设备的结构示意图。
具体实施例
本申请的说明性实施例包括但不限于一种图像处理方法、介质及设备。
可以理解,如本文所使用的,术语“模块”、“单元”可以指代或者包括专用集成电路(ASIC)、电子电路、执行一个或多个软件或固件程序的处理器(共享、专用、或群组)和/或存储器、组合逻辑电路、和/或提供所描述的功能的其他适当硬件组件,或者可以作为这些硬件组件的一部分。
可以理解,在本申请各实施例中,处理器可以是微处理器、数字信号处理器、微控制器等,和/或其任何组合。根据另一个方面,所述处理器可以是单核处理器,多核处理器等,和/或其任何组合。
可以理解,本申请提供的图像处理方法可以在各种电子设备上实施,包括但不限于,服务器、多个服务器组成的分布式服务器集群、手机、平板电脑、膝上型计算机、台式计算机、可穿戴设备、头戴式显示器、移动电子邮件设备、便携式游戏机、便携式音乐播放器、阅读器设备、个人数字助理、虚拟现实或者增强现实设备、其中嵌入或耦接有一个或多个处理器的电视机等电子设备等。
特别地,本申请提供的图像处理方法适用于边缘设备,边缘计算是在靠近物或数据源头的网络边缘侧,融合网络、计算、存储、应用核心能力的分布式开放平台(架构),就近提供边缘智能服务,能够满足实时业务、数据优化、应用智能、安全与隐私保护等方面的关键需求。例如,边缘设备可以是在视频监控系统中靠近视频数据源(网络智能摄像头)端能够对视频数据执行边缘计算的设备。
如图1所示,根据本申请的一些实施例,提供了一种神经网络模型,称之为MobileNeXt模型,其属于全卷积网络。
图1所示的神经网络模型可以用于图像处理。如图1所示,神经网络模型包括输入层、多个隐含层以及输出层共n个网络层。其中,第一层称为输入层,最后一层称为输出层,其他层称为隐含层。输入层接收不同维度的以数组形式呈现的待处理对象,例如图片、视频帧等。隐含层包含卷积层、池化层和全连接层三类基础构筑,更复杂的算法中包括Inception模块、残差块(residual block)等复杂构筑。在基本构筑中,卷积层和池化层为卷积神经网络特有。卷积层中的卷积核包含权重系数,而池化层不包含权重系数。
如图1所示,基础的网络模型的结构由1个输入层、3个卷积层、2个池化层、1个全连接层和1个输出层构成。三类基础构筑在隐含层中的顺序通常为:输入层—卷积层—池化层—全连接层—输出层。
下面详细介绍在进行图像处理时,采用样本图像对图1所示的神经网络模型进行处理的具体过程。
在使用神经网络模型进行图像处理之前,需要将大量的样本图像数据和期望结果数据输入模型中进行训练,其中,每张样本图像的图像数据输入图1所示的神经网络模型的输入层的n个节点,经过隐含层的计算,最后经由输出层计算后产生图像处理及结果数据。需要说明的是,在使用大量的样本图像对模型进行训练时,每个完整的训练过程只对应一张图像,例如总共有1000张图像,可以先对第一张图像进行训练,第一张图像训练完成后,再对第二张图像进行训练,依此类推,直至神经网络模型收敛。每一张图像训练完成后,将神经网络模型最终输出的处理结果数据和期望结果数据进行比较,计算出误差,根据该误差,能够对除了输入层的其他网络层中各节点的权重进行调整。如此,通过输入上述图像的图像数据对神经网络模型进行训练,不断地调整权重,在神经网络模型最终输出的图像处理结果数据和期望结果数据之间的误差小于误差阈值时,确定神经网络模型收敛。
在一些实施例中,隐含层进一步包括第一卷积层、全卷积层和全局平均池化层,全卷积层包括至少一个处理单元。该神经网络模型的网络体系结构详情参见表1。其中,每行表示一系列的处理单元,并重复“b”次。每个处理单元中使用的缩小率以“t”表示。每个阶段的第一个处理单元的步幅(stride)“s”设置为2,其余步幅设置为1。每个卷积层后面都有一个批处理归一化层(BN layer),所有空间卷积的内核大小都设置为3×3并假设总共有k个类别。但对于具有不同输入和输出通道的处理单元,不添加恒等映射(Identity Mapping)。
表1
序号 | t | 输出维度 | s | b | 输入维度 | 操作 |
1 | - | 112×112×32 | 2 | 1 | 224×224×3 | 3×3二维卷积 |
2 | 2 | 56×56×96 | 2 | 1 | 112×112×32 | 处理单元 |
3 | 6 | 56×56×144 | 1 | 1 | 56×56×96 | 处理单元 |
4 | 6 | 28×28×192 | 2 | 3 | 56×56×144 | 处理单元 |
5 | 6 | 14×14×288 | 2 | 3 | 28×28×192 | 处理单元 |
6 | 6 | 14×14×384 | 1 | 4 | 14×14×288 | 处理单元 |
7 | 6 | 7×7×576 | 2 | 4 | 14×14×384 | 处理单元 |
8 | 6 | 7×7×960 | 1 | 2 | 7×7×576 | 处理单元 |
9 | 6 | 7×7×1280 | 1 | 1 | 7×7×960 | 处理单元 |
10 | - | 1×1×1280 | - | 1 | 7×7×1280 | 7×7平均池化 |
11 | - | k | - | 1 | 1×1×1280 | 1×1二维卷积 |
可以理解,上述对图1所示的神经网络模型进行训练的技术方案的描述仅仅是示例性的,并非限制性的。
现有技术中的用于图像处理的移动神经网络模型大多是由堆叠的至少一个处理单元组成,处理单元基于经典瓶颈(bottleneck)残差块或反向残差块设计的,但是本申请所提出的MobileNeXt模型中的处理单元不同于现有的技术方案,以下结合附图进行详细描述。
图2(a)根据本申请的一些实施例,示出了现有技术中一种经典瓶颈残差块的结构示意图。瓶颈结构在ResNet网络模型中首次引入,如图2(a)所示,典型的瓶颈结构由三个卷积层组成:用于通道缩减的1×1卷积,用于图像的空间特征提取的3×3标准卷积和用于通道扩展的另一个1×1卷积。并经过扩大每个卷积层中的通道,将该组卷积应用于中间瓶颈卷积中以聚集更丰富的特征表示,或者引入基于注意力模块来显式的建模通道之间的相互依赖性等方式,使得经典瓶颈结构得以进一步改进。但由于模型复杂性,仅仅适用于重量级神经网络,在轻量级神经网络中很难得到应用。
为了减少计算量并提高神经网络模型的效率,本领域开始使用深度可分离卷积来代替标准卷积。具体的,比如,具有k×k×M×N权重张量的卷积可以分解为两个卷积,其中k×k是卷积内核大小,M和N分别是输入通道和输出通道的数量。第一个是M通道k×k深度方向的卷积运算(即通道卷积),以分别了解每个通道内位置之间图像的空间相关性。第二个是逐点卷积,用以学习线性组合通道以产生新的图像特征。由于逐点卷积和k×k深度可分离卷积的组合具有显着较少的参数和计算量,因此在构建处理单元时使用深度可分离卷积可以显着减少参数和计算成本。
图2(b)根据本申请的一些实施例,示出了现有技术中一种反向残差块的结构示意图,反向残差块在MobileNetV2网络模型中首次引入,是专门为移动设备量身定制的,尤其是针对计算资源预算有限的设备。如图2(b)所示,与经典瓶颈结构不同,为了节省计算量,采用低维压缩张量作为输入,并通过逐点卷积将其扩展到图像的较高维空间。然后应用深度可分离卷积进行空间上下文编码,之后进行另一个逐点卷积,以生成低维特征张量作为下一个残差块的输入。反向残差块使用了在低维瓶颈之间建立快捷连接以及采用线性瓶颈两种独特的体系结构设计,。与由3×3深度可分离卷积组成的经典MobileNet相比,使得性能在速度上得以提高,并优化了模型的复杂性。
反向残差块对性能的提高,使得其在基于移动网络体系结构中的图像处理中广泛使用。比如,ShuffleNetV2在反向残差块之前插入一个通道拆分模块(channel spitmodule),并在其后添加通道置乱模块(channel shuffle module);在HBONet中,下采样操作被引入到反向残差块中,以对更丰富的空间信息进行建模;MobileNetV3提出在每个阶段搜索最佳激活函数和反向残差块的扩展率;MixNet提出在反向残差块中搜索深度可分离卷积的最佳核大小;EfficientNet也是基于倒置残块,但不同的是,它使用缩放方法来控制网络权重,包括输入分辨率,网络深度和网络宽度。
尽管性能良好,但在反向残差块中,将由中间扩展层编码的特征映射到低维特征映射,由于通道压缩,无法保留足够的有用信息。此外,最近的研究表明,更广泛的体系结构更有利于缓解梯度混淆,提高神经网络的性能。由于相邻的反向残差块之间表示的维数较低,使得在瓶颈之间放置的快捷连接连接可能会阻碍模型训练期间顶层的梯度成功传播到底层,与上述所有方法不同,本申请改进了经典瓶颈结构,并证明了在移动环境中性能优于反向残差块。
鉴于上述的反向残差块在图像处理过程中的局限性,本申请中重新考虑其设计规则,并提出了一种处理单元,可通过翻转反向残差的操作来解决上述问题,图2(c)根据本申请的一些实施例,示出了一种处理单元的结构示意图。如图2(c)所示,尽管与反向残差块和经典瓶颈残差块类似,都利用了瓶颈结构,但设计原理和内部结构却大不相同。在处理单元中,使用每个单元的厚度来表示相对应的通道数。可以看出,与反向残差块相比,处理单元颠倒了在瓶颈之间建立捷径的想法,并在残差路径的两端添加了深度可分离卷积,提高了模型的分类精度和运算速度等性能,将在下面进行详细解释。
图3根据本申请的一些实施例,示出了一种电子设备100的结构框图。具体地,如图3所示,电子设备100包括一个或多个处理器104,与处理器104中的至少一个连接的系统控制逻辑108,与系统控制逻辑108连接的系统内存112,与系统控制逻辑108连接的非易失性存储器(NVM)116,以及与系统控制逻辑108连接的网络接口120。
在一些实施例中,处理器104可以包括一个或多个单核或多核处理器。在一些实施例中,处理器104可以包括通用处理器和专用处理器(例如,图形处理器,应用处理器,基带处理器等)的任意组合。在电子设备100采用eNB(Evolved Node B,增强型基站)或RAN(Radio Access Network,无线接入网)控制器的实施例中,处理器104可以被配置为执行各种符合的实施例。
在一些实施例中,处理器104可以用于基于神经网络模型,进行图像处理。具体的,例如,在神经网络模型的各层对图像的处理过程中,处理器104根据获取到的图像信息不断调整神经网络模型,直至得到准确度较高的图像特征映射。处理器104还可以周期性更新上述神经网络模型,以便于较好的适应对神经网络模型的各种实际需求的变化。
在一些实施例中,系统控制逻辑108可以包括任意合适的接口控制器,以向处理器104中的至少一个和/或与系统控制逻辑108通信的任意合适的设备或组件提供任意合适的接口。
在一些实施例中,系统控制逻辑108可以包括一个或多个存储器控制器,以提供连接到系统内存112的接口。系统内存112可以用于加载以及存储数据和/或指令。在一些实施例中电子设备100的内存112可以包括任意合适的易失性存储器,例如合适的动态随机存取存储器(DRAM)。在一些实施例中,系统内存112可以用于加载或者存储实施上述图像处理的指令,或者系统内存112可以用于加载或者存储实施利用上述神经网络模型进行图像处理的应用程序的指令。
NVM/存储器116可以包括用于存储数据和/或指令的一个或多个有形的、非暂时性的计算机可读介质。在一些实施例中,NVM/存储器116可以包括闪存等任意合适的非易失性存储器和/或任意合适的非易失性存储设备,例如HDD(Hard DiskDrive,硬盘驱动器),CD(Compact Disc,光盘)驱动器,DVD(Digital Versatile Disc,数字通用光盘)驱动器中的至少一个。NVM/存储器116还可以用于存储上述图像处理所用的神经网络模型。
NVM/存储器116可以包括安装电子设备100的装置上的一部分存储资源,或者它可以由设备访问,但不一定是设备的一部分。例如,可以经由网络接口120通过网络访问NVM/存储116。
特别地,系统内存112和NVM/存储器116可以分别包括:指令124的暂时副本和永久副本。指令124可以包括:由处理器104中的至少一个执行时导致电子设备100实施本申请中提供的图像处理方法的指令。在一些实施例中,指令124、硬件、固件和/或其软件组件可另外地/替代地置于系统控制逻辑108,网络接口120和/或处理器104中。
网络接口120可以包括收发器,用于为电子设备100提供无线电接口,进而通过一个或多个网络与任意其他合适的设备(如前端模块,天线等)进行通信。在一些实施例中,网络接口120可以集成于电子设备100的其他组件。例如,网络接口120可以集成于处理器104的,系统内存112,NVM/存储器116,和具有指令的固件设备(未示出)中的至少一种,当处理器104中的至少一个执行所述指令时,电子设备100实现本申请中提供的图像处理方法。
网络接口120可以进一步包括任意合适的硬件和/或固件,以提供多输入多输出无线电接口。例如,网络接口120可以是网络适配器,无线网络适配器,电话调制解调器和/或无线调制解调器。
在一些实施例中,处理器104中的至少一个可以与用于系统控制逻辑108的一个或多个控制器的逻辑封装在一起,以形成系统封装(SiP)。在一些实施例中,处理器104中的至少一个可以与用于系统控制逻辑108的一个或多个控制器的逻辑集成在同一管芯上,以形成片上系统(SoC)。
电子设备100可以进一步包括:输入/输出(I/O)设备132。I/O设备132可以包括用户界面,使得用户能够与电子设备100进行交互;外围组件接口的设计使得外围组件也能够与电子设备100交互。在一些实施例中,电子设备100还包括传感器,用于确定与电子设备100相关的环境条件和位置信息的至少一种。
根据本申请的一些实施例,提供了一种图像处理方法。图4根据本申请的一些实施例,示出了一种图像处理方法流程图,如图4所示,使用MobileNeXt模型进行图像处理的方法包括如下步骤:
步骤402:获取图像;
步骤404:图像在MobileNeXt模型的输入层被处理成至少一层图像数据;
步骤406:图像数据经过包括32个输出通道的第一卷积层的处理,得到32个输出通道的所述图像数据的特征图;
步骤408:经过全卷积层的处理,得到图像数据的局部高维特征数据,在MobileNeXt模型中,设置扩展比率为6;
步骤410:经过全局平均池化层的处理,将二维特征图转换为一维特征向量,使得图像数据的局部高维特征数据被池化为图像的特征映射;
步骤412:经过输出层的处理,输出图像的特征映射。
在一些实施例中,MobileNeXt模型的隐含层中包括多个处理单元,多个处理单元中至少部分处理单元彼此互联并且与所述输入层的输出相连。
其中,在至少一个处理单元中,作为至少一个处理单元的输入的图像的高维特征数据依次经过由第一深度可分卷积层、第一逐点卷积层、第二逐点卷积层以及第二深度可卷积层构成的快捷路径处理,输出所述图像的局部高维特征数据。
在另一些实施例中,可在最后添加一个全连接层,以预测每个类别的最终分数。
该图像处理方法与现有的图像处理方法相比,在图像处理的过程中,
1)消除了信息丢失,有效缓解梯度混淆;
2)减少了计算成本,有效的去除了神经网络中的冗余参数;
3)降低了计算复杂度,提高了对图像的分类精度;
4)所需计算机系统的内部结构可以更精简,使得图像处理在移动设备等轻量级神经网络中能够得以应用。
接下来结合附图,详细说明本申请中的处理单元,相对于经典瓶颈结构以及反向残差块做出的改进。
图5(a)根据本申请的一些实施例,示出了一种标准卷积被深度可分离卷积代替的瓶颈结构的网络结构图,如图5(a)所示,第一种变体通过对经典瓶颈结构进行直接修改而构建的,方法是将标准3×3卷积替换为3×3深度卷积。表2列出了几种不同的结构的性能对比表,如表2所示,与本申请中的处理单元相比,第一种变体的性能下降了约5%。主要是因为深度卷积是在具有低维特征空间的瓶颈中进行的,因此无法捕获足够的空间信息。
图5(b)根据本申请的一些实施例,示出了一种标准卷积被两个深度可分离卷积代替的瓶颈结构的网络结构图,如图5(b)所示,第二个变体在第一个变体的基础上做了改进,改进点是在瓶颈中添加了另一个3×3的深度卷积。可以看出,与图5(a)所示的结构相比,第二种变体在top-1精度提高了1%以上。这表明编码更多的空间信息的确可以带来好的效果。通过比较图5(b)和图5(d)也可以得到同样的结果。
图5(c)根据本申请的一些实施例,示出了一种切换处理单元中两个逐点卷积位置的网络结构图,如图5(c)所示,第三种变体基于原始的反向残差块,将深度可分离卷积从高维特征空间移动到具有较少特征通道的瓶颈位置。与图5(b)相比,该变体具有更多的可学习参数和算成本,但性能却更差。这也说明在高维表示之间建立快捷方式对于网络性能更有利。
图5(d)根据本申请的一些实施例,示出了一种处理单元的网络结构图,本申请中的处理单元比其他三种变体都能得到更好的性能,性能对比如表2所示:
表2
具体的,可通过以下两个规则来解释性能提高的原因:
(1)为了在过渡到顶层时保留来自底层的更多信息并促进梯度在各层之间的传播,使用快捷连接的方式连接高维表示;
(2)具有较小的核大小(例如3×3)的深度可分离卷积是轻量级的,因此可在高维特征上应用几个深度可分离卷积,以便可以对更丰富的空间信息进行编码以生成更具表现力的表示形式。
表3示出了该处理单元的网络结构,本申请中的处理单元证明了经典瓶颈结构中在高维表示之间建立快捷连接的方法也同样适用于轻量级神经网络。据了解,这是首次利用经典瓶颈结构相对于反向残留块的优势,针对有效的神经网络设计进行研究。同时也证明了通过在本申请中处理单元的残差路径的末端添加深度可分离卷积可以鼓励神经网络学习更多表现性的空间信息,从而产生更好的性能。
表3
在一些实施例中,如图5(d)所示,第一逐点卷积层对图像数据进行通道的缩减(reduction),以及第二逐点卷积层对第一逐点卷积层输出的图像数据进行通道的扩展(expansion)。如图5(c)所示,在反向残留块中,首先进行通道的扩展,然后进行通道的缩减。而为确保快捷连接连接高维表示,本申请中的处理单元提出调换两个逐点卷积的顺序。使得F∈RDf×Df×M为处理单元的输入张量,G∈RDf×Df×M为处理单元的输出张量。暂时不考虑深度可分离卷积层和激活层。则处理单元的公式可写为:
G=Φe(Φr(F))+F, (1)
其中Φe和Φr分别代表用于通道扩展和缩减的逐点卷积。由此,可将瓶颈保持在残差路径的中间,进一步减少参数和节省计算成本。更进一步的,可以使用快捷连接而非瓶颈连接的方式连接具有大量通道的表示形式。
在一些实施例中,在第一逐点卷积层和所述第二逐点卷积层之间不进行其他卷积操作。逐点卷积可用于编码通道间信息,但无法捕获空间信息。在本申请的处理单元中,采用深度可分离卷积对空间信息进行编码。在逐点卷积之间添加深度可分离卷积,以学习表达性空间上下文信息。
图6根据本申请的一些实施例,示出了一种具有深度可分离卷积的经典瓶颈结构与处理单元的网络结构对比图,如图6所示,在本申请的处理单元中,两个逐点卷积之间是瓶颈结构,没有将深度可分离卷积直接放置在两个逐点卷积之间,而是在残差路径的末端添加深度可分离卷积,而在在第一逐点卷积层和所述第二逐点卷积层之间不进行其他卷积操作,从数学上讲,基本组成部分可以表述为:
其中Φi,p和Φi,d分别代表第i个点的卷积和深度卷积。由于两个深度卷积都是在高维空间中进行的,因此与反向残差块相比,可以提取出更丰富的特征表示。直接在瓶颈中添加深度可分离卷积可以减少滤波器的数量,使得需进行编码的空间信息变少。通过实验发现,与MobileNetV2相比,该结构将性能大大降低了1%以上。
在一些实施例中,快捷路径是建立在图像数据的高维特征空间中,并提取局部特征张量,得到所述图像数据的局部高维特征数据。本申请中的处理单元没有在瓶颈间建立快捷连接,而是在高维表示之间放置了快捷连接,如图6所示,与反向残差块相比,比瓶颈结构“更宽”的快捷连接使得从输入张量F到输出张量G可传递更多信息,并允许更多的梯度跨多层传播。值得注意的是,仅在输入通道和输出通道一致的情况下,才建立快捷连接。
快捷连接能够提高残差块中跨层传播梯度效率。实验表明,无需提取残差块的全局恒等张量,仅需提取图像的局部特征张量。为了使网络更友好的适应移动设备,在此引入一个新的超参数标识——恒等张量乘法器,记为α∈[0,1],用来决定保留恒等张量中通道的某一部分即提取图像的对应部分的局部特征张量。为了方便起见,令Φ为处理单元中残差路径的变换函数。最初,处理单元的公式可以写成G=Φ(F)+F。应用乘数后,处理单元则可重写为
G1:αM=Φ(F)1:αM+F1:αM,Gα:αM=Φ(F)α:αM, (4)
其中,下标代表通道的维度。
使用α的优点主要有两个方面。首先,在减小乘数之后,可以减少每个处理单元中逐元素相加的次数。众所周知,逐元素相加很费时。选择局部恒等张量乘数能够得到更好的延迟,而几乎不会降低性能。其次,可以减少存储器访问次数。影响模型等待时间的主要因素之一是内存访问成本。由于快捷连接标识张量来自最后一个处理单元的输出,因此其重复性暗示了将其缓存在芯片上从而避免了过多的片外内存访问的机会。因此,减小恒等张量的通道尺寸可以有效地鼓励处理器将其存储在高速缓存或处理器附近的其他更快的内存中,从而改善延迟。
在一些实施例中,对第一深度可分卷积层输出的数据使用线性激活函数;对第一逐点卷积层输出的数据使用非线性激活函数;对第二逐点卷积层输出的数据使用线性激活函数;对第二深度卷积层输出的数据使用非线性激活函数。本领域技术人员应当清楚,使用线性瓶颈可以防止特征值归零,从而减少信息丢失。因而,我们在缩减层(第一个逐点卷积层)之后不添加任何激活层。尽管处理单元的输出是高维特征,本领域技术人员也清楚,在最后一次卷积后添加激活层可能会降低分类性能。因此,本申请中的处理单元仅在第一个深度可分离卷积层和最后一个逐点卷积层之后添加激活层。
根据本申请的一些实施例,提供了一种图像处理装置600,图7根据本申请的一些实施例,示出了一种图像处理装置的结构示意图。如图7所示,使用MobileNeXt模型进行图像处理的装置600如下:
获取模块602,获取图像;
处理模块604,对图像进行基于神经网络模型的处理,得到图像数据的局部高维特征数据,处理模块包括多个处理单元,处理单元1,处理单元2,处理单元3等等,多个处理单元中至少部分处理单元彼此互联并且与输出相连;以及
输出模块606,输出所述图像的特征映射,所述图像的特征映射由所述图像数据的局部高维特征池化融合得到;
其中,在至少一个处理单元中,作为所述至少一个处理单元的输入的所述图像的高维特征数据依次经过由第一深度可分离卷积层、第一逐点卷积层、第二逐点卷积层以及第二深度可卷积层构成的快捷连接处理,输出所述图像的局部高维特征数据。
在一些实施例中,上述装置还包括:第一逐点卷积层对图像数据进行通道的缩减,以及所述第二逐点卷积层对所述第一逐点卷积层输出的图像数据进行通道的扩展。不但节省了参数和计算成本,还可以使用快捷连接而非瓶颈连接的方式连接具有大量通道的表示形式。
在一些实施例中,上述装置还包括:在第一逐点卷积层和所述第二逐点卷积层之间不进行其他卷积操作。该结构将性能大大降低了1%以上。
在一些实施例中,上述装置还包括:快捷连接是建立在所述图像数据的高维特征空间中,并提取图像数据的局部特征张量,得到图像数据的局部高维特征数据。
在一些实施例中,上述装置还包括:对第一深度可分离卷积层输出的数据使用线性激活函数;对第一逐点卷积层输出的数据使用非线性激活函数;对第二逐点卷积层输出的数据使用线性激活函数;对第二深度卷积层输出的数据使用非线性激活函数。使得从输入张量到输出张量可传递更多信息,并允许更多的梯度跨多层传播。
在一些实施例中,上述装置还包括:神经网络模型包括输入层、多个隐含层和输出层,隐含层进一步包括第一卷积层、全卷积层和全局平均池化层,全卷积层包括至少一个处理单元,其中,输入的所述图像经过包括32个输出通道的第一卷积层的处理,得到32个输出通道的图像数据的特征图;图像数据的特征图,经过全卷积层的处理,得到图像数据的局部高维特征数据;图像数据的局部高维特征数据经过全局平均池化层的处理,被池化为图像的特征映射。
接下来,将结合实验数据,从不同角度分别阐述MobileNeXt相对于MobileNetV2的优势。
实验基于采用PyTorch工具箱,使用标准的SGD优化器来训练衰减和动量均为0.9且权重衰减为4×10-5的模型,初始学习率为0.05的余弦学习时间表,批处理大小设置为256,并使用四个GPU进行训练。除了比较其完整模型的性能(即权重乘数为1)进行分类外,还将其性能与其他权重乘数和量化进行比较,侧面反映出MobileNeXt模型在整个模型架构配置方面的性能优势。
分别采用1.4、1.0、0.75、0.5和0.35五个不同的宽度乘数作为比例因子并基于输入分辨率为224×224的不同宽度乘法器来进行不同宽度乘数下的对比,用以衡量所使用的模型的复杂性及准确性。如表4所示,在具有PyTorch环境设置的Google Pixel 4XL上进行测试时(例如,宽度乘数1.0的两个型号为210ms),乘数设置得越小,通过MobileNetV2就可以获得越好的性能。不同乘数的MobileNeXt模型在可学习参数和计算成本方面均优于MobileNetV2。当乘数较小时,与MobileNetV2相比,MobileNeXt模型的性能增益特别高。
表4
通过实验验证,在以下情况中,MobileNeXt可结合量化方法实现比MobileNetV2更好的性能。如表5所示,在位配置中,“W”代表模型权重的位数,“A”代表激活的位数。在不进行量化时,MobileNeXt模型就top-1准确性而言将MobileNetV2改进了1.7%以上。8比特量化是当前较为普遍的通用解决方案,因而设置参数和激活量化为8位,此时,在相同的量化设置下,MobileNeXt模型性能比MobileNetV2高出3.55%。造成如此大的改进的原因有两个:第一,与MobileNetV2相比,将每个处理单元中的快捷连接从低维表示转换为高维表示,使得量化后可以保留更多有用的特征表示;第二,使用了更多的深度可分离卷积可以保留更多空间信息,有助于提高分类性能。
表5
模型 | 精度(W/A) | 方法 | Top-1精度(%) |
MobileNetV2 | INT8/INT8 | 训练后量化 | 65.07 |
MobileNeXt | INT8/INT8 | 训练后量化 | 68.62 |
MobileNetV2 | FP32/FP32 | - | 72.25 |
MobileNeXt | FP32/FP32 | - | 74.02 |
如图6所示,本申请中的处理单元包含两个3×3深度可分离卷积,用于编码丰富的空间上下文信息。为了证明是处理单元使得MobileNeXt模型更优化,在此实验中,与一个改进版MobileNetV2进行结构上的对比,其改进在于在每个反向残差块的中间插入一个深度卷积。
表6
方法 | #深度卷积 | 参数(M) | M累加(M) | Top-1精度(%) |
MobileNetV2 | 2(中间) | 3.6 | 340 | 73.02 |
MobileNeXt | 2(顶端,底端) | 3.5 | 300 | 74.02 |
结果如表6所示,改进版的MobileNetV2性能提高到了73%,但与MobileNeXt模型74%的性能相比,仍存在一定的差距,与此同时还会导致参数更多和复杂性更高。这表明从网络结构上讲,MobileNeXt模型比MobileNetV2更有优势。
为了进一步验证本申请中的处理单元相对于反向残差块的优越性,将SE块(Squeeze-and-Excitation)添加到MobileNeXt模型中,直接采用EfficientNet-b0体系结构,并用基本的扩充策略将反向残差块替换为处理单元。如表7所示,其中,MobileNeXt代表仅具有处理单元的模型,而MobileNeXt+表示添加了处理单元和SE块的模型。为了与其他最新模型进行公平比较,在架构设计和数据扩充上均未应用任何搜索方法。通过采用相当的计算量以及20%的参数减少比率,当用处理单元替换反向残差块时,可以使ImageNet-1k数据集的top-1分类精度提高0.4%。
表7
方法 | 参数(M) | M累加(M) | Top-1精度(%) |
MobilenetV1-1.0 | 4.2 | 575 | 70.6 |
ShuffleNetV2-1.5 | 3.5 | 299 | 72.6 |
MobilenetV2-1.0 | 3.5 | 300 | 72.3 |
MnasNet-A1 | 3.9 | 312 | 75.2 |
MobilenetV3-L-0.75 | 4.0 | 155 | 73.3 |
ProxylessNAS | 4.1 | 320 | 74.6 |
FBNet-B | 4.5 | 295 | 74.1 |
IGCV3-D | 7.2 | 610 | 74.6 |
GhostNet-1.3 | 7.3 | 226 | 75.7 |
EfficientNet-b0 | 5.3 | 390 | 76.3 |
MobileNeXt-1.0 | 3.4 | 300 | 74.02 |
MobileNeXt-1.0+ | 3.98 | 330 | 76.05 |
MobileNeXt-1.1+ | 4.28 | 420 | 76.7 |
根据本申请的一些实施例,提供了一种将神经网络模型应用于对象检测任务上的应用。
分别使用MobileNeXt模型和MobileNetv2作为特征提取器,并在SSDLite检测器的基础上使用Pascal VOC 2007测试集进行测试。其中,设置SSDLite的第一层和第二层分别使用输出步幅为16和32连接到最后一个逐点卷积层。其余的SSDLite层使用输出步幅为32连接到最后一个逐点卷积层的顶部。在训练期间,使用24的批量大小,并且对所有模型进行了240,000次迭代训练。表8显示了使用不同训练模型时的训练结果,如表8所示,使用相同的SSDLite320检测器,用MobileNeXt替换MobileNetV2模型可以在均值平均精度(mAP,MeanAverage Precision)上得到更好的结果。显然,通过几乎相同数量的参数和计算量,具有MobileNeXt模型的SSDLite将MobileNetV2的参数和性能提高了近1%。这表明与MobileNetV2相比,MobileNeXt模型具有更好的可传输能力。
表8
序号 | 方法 | 训练模型 | 参数(M) | M累加(B) | mAP(%) |
1 | SSD300 | VGG | 36.1 | 35.2 | 77.2 |
2 | SSDLite320 | MobileNetV2 | 4.3 | 0.8 | 71.7 |
3 | SSDLite320 | MobileNeXt | 4.3 | 0.8 | 72.6 |
根据本申请的一些实施例,提供了一种将处理单元视为具有比常规卷积运算符更强大的转换能力的“超级”运算符的应用。
在一些实施例中,提供一个用于搜索的计算单元,并将其作为最终进行结构搜索的基本计算单元,为了进一步研究本申请中的处理单元相对于反向残差块的优越性,将其分别添加到可微分搜索算法(DARTS)的搜索空间中,以查看架构搜索后的网络性能,并在数据集CIFAR-10上查看相应的结果。
如上文中所提到的,采用DARTS搜索算法来搜索单元结构,本实施例中使用包含如下基本操作的搜索空间作为基线(表示为原始DARTS):
1)卷积运算(ConvOp):常规卷积(reg_conv),空洞卷积(dil_conv),可分离卷积(sep_conv),深度卷积(dpwise_conv);
2)卷积内核的大小(kernel size):3×3,5×5,7×1接着1×7;
3)非参数操作:平均池化(ave_pool),最大池化(max_pool),跳跃连接(skipconnection),不做操作(None)。
为了与反向残差块进行比较,本实施例在以下两个新的搜索空间内进行架构搜索:
1)DARTS+反向残差块:原始搜索空间加上反向残差块,作为深度可分离卷积运算候选。
2)DARTS+根据本申请的处理单元:原始搜索空间加上根据本申请的处理单元。
在搜索过程中,严格遵循训练策略,使用相同的超参数进行公平比较,并在细胞的每个有向无环图(DAG)中将节点数设置为7。图8(a)根据本申请的一些实施例,示出了一种用DARTS在CIFAR-10数据集上搜索正常细胞结构过程示意图,图8(b)根据本申请的一些实施例,示出了一种用DARTS在CIFAR-10数据集上搜索缩减细胞结构过程示意图,其中“SGBlock”表示本申请中的处理单元。在搜索空间中,如图8(a)所示,将处理单元用于搜索正常细胞结构中,取代可分离卷积操作和跳跃连接等操作,使用处理单元作为唯一的运算单元;如图8(b)所示,在搜索还原细胞时,无需进行处理单元操作。
表9
序号 | 搜索空间 | 测试错误率(%) | 参数(M) | 搜索方法 | #运算符 |
1 | 原始DARTS | 3.11 | 3.25 | 基于梯度 | 7 |
2 | DARTS+反向残差块 | 3.26 | 3.29 | 基于梯度 | 7 |
3 | DARTS+处理单元 | 2.98 | 2.45 | 基于梯度 | 7 |
结果如表9所示,通过在正常细胞结构的情况下将处理单元作为新的运算符添加到DARTS搜索空间中,所得到的模型比仅有原始DARTS搜索空间的模型具有更高的精度,且参数减少了约25%。但是,在搜索空间中添加了反向残差块的搜索模型却会降低原始模型的性能。而将处理单元添加到原始搜索空间中可以大大减少搜索架构中可学习参数的数量,并改善CIFAR-10数据集的分类性能。再次表明,当与搜索算法结合使用时,本申请中的处理单元可以用来代替原始块以提高性能。
图9根据本申请的一些实施例,示出了一种用于图像处理的电子设备的结构示意图。如图9所示,电子设备800包括:
图像获取模块802,用于获取图像;
输入层804,将图像处理成至少一层图像数据;
第一卷积层806,将图像数据处理成特征图;
全卷积层808,将特征图输出为图像的局部高维特征数据;
全局平均池化层810,将图像数据的局部高维特征数据池化为图像的特征映射;
输出层812,输出图像的特征映射。
可以理解,图9所示的用于图像处理的电子设备800与本申请提供的图像处理的方法相对应,以上关于本申请的提供的图像处理的方法的具体描述中的技术细节依然适用于图9所示的用于图像处理的电子设备800,具体描述请参见上文,在此不再赘述。
可以理解,本申请实施例提供的基于神经网络的图像处理的示例性应用包括但不限于人工智能领域的图像处理。
根据本申请的实施例,图10示出了一种电子设备900的结构示意图。该电子设备900也能够执行本申请上述实施例公开的图像处理的方法。在图10中,相似的部件具有同样的附图标记。如图10所示,电子设备900可以包括处理器910、电源模块940、存储器980,移动通信模块930、无线通信模块920、传感器模块990、音频模块950、摄像头970、接口模块960、按键901以及显示屏902等。
可以理解的是,本发明实施例示意的结构并不构成对电子设备900的具体限定。在本申请另一些实施例中,电子设备900可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器910可以包括一个或多个处理单元,例如,可以包括中央处理器CPU(Central sandglass block)、图像处理器GPU(Graphics sandglass block)、数字信号处理器DSP、微处理器MCU(Micro-programmed Control Unit)、AI(ArtificialIntelligence,人工智能)处理器或可编程逻辑器件FPGA(Field ProgrammableGateArray)等的处理单元或处理电路。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。处理器910中可以设置存储单元,用于存储指令和数据。在一些实施例中,处理器910中的存储单元为高速缓冲存储器980。存储器980主要包括存储程序区9801以及存储数据区9802,其中,存储程序区9801可存储操作系统以及至少一个功能所需的应用程序(比如声音播放,图像识别等功能)。在本申请实施例提供的基于神经网络模型的图像处理方法可视为存储程序区9801中以能够实现图像处理等功能的应用程序。神经网络模型存储于上述存储数据区9802中。
电源模块940可以包括电源、电源管理部件等。电源可以为电池。电源管理部件用于管理电源的充电和电源向其他模块的供电。在一些实施例中,电源管理部件包括充电管理模块和电源管理模块。充电管理模块用于从充电器接收充电输入;电源管理模块用于连接电源,充电管理模块与处理器910。电源管理模块接收电源和/或充电管理模块的输入,为处理器910,显示屏902,摄像头970,及无线通信模块920等供电。
移动通信模块930可以包括但不限于天线、功率放大器、滤波器、LNA(Low noiseamplify,低噪声放大器)等。移动通信模块930可以提供应用在电子设备900上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块930可以由天线接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块930还可以对经调制解调处理器调制后的信号放大,经天线转为电磁波辐射出去。在一些实施例中,移动通信模块930的至少部分功能模块可以被设置于处理器910中。在一些实施例中,移动通信模块930至少部分功能模块可以与处理器910的至少部分模块被设置在同一个器件中。无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivisionmultiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),无线局域网(wireless local areanetworks,WLAN),近距离无线通信技术(near field communication,NFC),调频(frequency modulation,FM)和/或field communication,NFC),红外技术(infrared,IR)技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(globalnavigation satellite system,GLONASS),北斗卫星导航系统(beidounavigationsatellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
无线通信模块920可以包括天线,并经由天线实现对电磁波的收发。无线通信模块920可以提供应用在电子设备900上的包括无线局域网(wireless localarea networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。电子设备900可以通过无线通信技术与网络以及其他设备进行通信。
在一些实施例中,电子设备900的移动通信模块930和无线通信模块920也可以位于同一模块中。
显示屏902用于显示人机交互界面、图像、视频等。显示屏902包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organiclight-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flexlight-emitting diode,FLED),Miniled,MicroLed,Micro-oled,量子点发光二极管(quantum dot light emitting diodes,QLED)等。
传感器模块990可以包括接近光传感器、压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
音频模块950用于将数字音频信息转换成模拟音频信号输出,或者将模拟音频输入转换为数字音频信号。音频模块950还可以用于对音频信号编码和解码。在一些实施例中,音频模块950可以设置于处理器910中,或将音频模块950的部分功能模块设置于处理器910中。在一些实施例中,音频模块950可以包括扬声器、听筒、麦克风以及耳机接口。
摄像头970用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件把光信号转换成电信号,之后将电信号传递给ISP(Image SignalProcessing,图像信号处理)转换成数字图像信号。电子设备900可以通过ISP,摄像头970,视频编解码器,GPU(Graphic sandglass block,图形处理器),显示屏902以及应用处理器等实现拍摄功能。
接口模块960包括外部存储器接口、通用串行总线(universal serial bus,USB)接口及用户标识模块(subscriber identification module,SIM)卡接口等。其中外部存储器接口可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备900的存储能力。外部存储卡通过外部存储器接口与处理器910通信,实现数据存储功能。通用串行总线接口用于电子设备900和其他电子设备进行通信。用户标识模块卡接口用于与安装至电子设备900的SIM卡进行通信,例如读取SIM卡中存储的电话号码,或将电话号码写入SIM卡中。
在一些实施例中,电子设备900还包括按键901、马达以及指示器等。其中,按键901可以包括音量键、开/关机键等。马达用于使电子设备900产生振动效果,例如在用户的电子设备900被呼叫的时候产生振动,以提示用户接听电子设备900来电。指示器可以包括激光指示器、射频指示器、LED指示器等。
本申请公开的机制的各实施例可以被实现在硬件、软件、固件或这些实现方法的组合中。本申请的实施例可实现为在可编程系统上执行的计算机程序或程序代码,该可编程系统包括至少一个处理器、存储系统(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。
可将程序代码应用于输入指令,以执行本申请描述的各功能并生成输出信息。可以按已知方式将输出信息应用于一个或多个输出设备。为了本申请的目的,处理系统包括具有诸如例如数字信号处理器(DSP)、微控制器、专用集成电路(ASIC)或微处理器之类的处理器的任何系统。
程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理系统通信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,本申请中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。
在一些情况下,所公开的实施例可以以硬件、固件、软件或其任何组合来实现。所公开的实施例还可以被实现为由一个或多个暂时或非暂时性机器可读(例如,计算机可读)存储介质承载或存储在其上的指令,其可以由一个或多个处理器读取和执行。例如,指令可以通过网络或通过其他计算机可读介质分发。因此,机器可读介质可以包括用于以机器(例如,计算机)可读的形式存储或传输信息的任何机制,包括但不限于,软盘、光盘、光碟、只读存储器(CD-ROMs)、磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁卡或光卡、闪存、或用于利用因特网以电、光、声或其他形式的传播信号来传输信息(例如,载波、红外信号数字信号等)的有形的机器可读存储器。因此,机器可读介质包括适合于以机器(例如计算机)可读的形式存储或传输电子指令或信息的任何类型的机器可读介质。
在附图中,可以以特定布置和/或顺序示出一些结构或方法特征。然而,应该理解,可能不需要这样的特定布置和/或排序。而是,在一些实施例中,这些特征可以以不同于说明性附图中所示的方式和/或顺序来布置。另外,在特定图中包括结构或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,可以不包括这些特征或者可以与其他特征组合。
需要说明的是,本申请各设备实施例中提到的各单元/模块都是逻辑单元/模块,在物理上,一个逻辑单元/模块可以是一个物理单元/模块,也可以是一个物理单元/模块的一部分,还可以以多个物理单元/模块的组合实现,这些逻辑单元/模块本身的物理实现方式并不是最重要的,这些逻辑单元/模块所实现的功能的组合才是解决本申请所提出的技术问题的关键。此外,为了突出本申请的创新部分,本申请上述各设备实施例并没有将与解决本申请所提出的技术问题关系不太密切的单元/模块引入,这并不表明上述设备实施例并不存在其它的单元/模块。
需要说明的是,在本专利的示例和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
虽然通过参照本申请的某些优选实施例,已经对本申请进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本申请的精神和范围。
Claims (19)
1.一种基于神经网络的图像处理方法,其特征在于,
获取图像;
所述图像在所述神经网络模型的输入层被处理成至少一层图像数据;
将所述图像数据输入所述神经网络模型的隐含层进行处理,得到所述图像数据的局部高维特征数据,其中所述神经网络模型的隐含层包括多个处理单元,所述多个处理单元中至少部分处理单元彼此互联并且与所述输入层的输出相连;以及
输出所述图像的特征映射,所述图像的特征映射由所述图像数据的局部高维特征池化融合得到;
其中,在至少一个处理单元中,作为所述至少一个处理单元的输入的所述图像的高维特征数据依次经过由第一深度可分离卷积层、第一逐点卷积层、第二逐点卷积层以及第二深度可卷积层构成的快捷连接处理,输出所述图像的局部高维特征数据。
2.如权利要求1所述的方法,其特征在于,所述第一逐点卷积层对所述图像数据进行通道的缩减,以及所述第二逐点卷积层对所述第一逐点卷积层输出的图像数据进行通道的扩展。
3.如权利要求2所述的方法,其特征在于,在所述第一逐点卷积层和所述第二逐点卷积层之间不进行其他卷积操作。
4.如权利要求3所述的方法,其特征在于,所述快捷连接是建立在所述图像数据的高维特征空间中,并提取所述图像数据的局部特征张量,得到所述图像数据的局部高维特征数据。
5.如权利要求4所述的方法,其特征在于,对所述第一深度可分离卷积层输出的数据使用线性激活函数;对所述第一逐点卷积层输出的数据使用非线性激活函数;对所述第二逐点卷积层输出的数据使用线性激活函数;对所述第二深度卷积层输出的数据使用非线性激活函数。
6.如权利要求1-5所述的方法,其特征在于,所述神经网络模型包括输入层、多个隐含层和输出层,所述隐含层进一步包括第一卷积层、全卷积层和全局平均池化层,全卷积层包括至少一个处理单元,其中,输入的所述图像数据经过包括32个输出通道的第一卷积层的处理,得到32个输出通道的所述图像数据的特征图;
所述图像数据的特征图,经过所述全卷积层的处理,得到所述图像数据的局部高维特征数据;
所述图像数据的局部高维特征数据经过全局平均池化层的处理,被池化为所述图像的特征映射。
7.一种图像处理装置,其特征在于,包括:
获取模块,获取图像;
处理模块,对所述图像进行基于神经网络模型的处理,得到所述图像数据的局部高维特征数据,所述处理模块包括多个处理单元,所述多个处理单元中至少部分处理单元彼此互联并且与输出相连;以及
输出模块,输出所述图像的特征映射,所述图像的特征映射由所述图像数据的局部高维特征池化融合得到;
其中,在至少一个处理单元中,作为所述至少一个处理单元的输入的所述图像的高维特征数据依次经过由第一深度可分离卷积层、第一逐点卷积层、第二逐点卷积层以及第二深度可卷积层构成的快捷连接处理,输出所述图像的局部高维特征数据。
8.如权利要求7所述的装置,其特征在于,所述第一逐点卷积层对所述图像数据进行通道的缩减,以及所述第二逐点卷积层对所述第一逐点卷积层输出的图像数据进行通道的扩展。
9.如权利要求8所述的装置,其特征在于,在所述第一逐点卷积层和所述第二逐点卷积层之间不进行其他卷积操作。
10.如权利要求9所述的装置,其特征在于,所述快捷连接是建立在所述图像数据的高维特征空间中,并提取所述图像数据的局部特征张量,得到所述图像数据的局部高维特征数据。
11.如权利要求9所述的装置,其特征在于,对所述第一深度可分离卷积层输出的数据使用线性激活函数;对所述第一逐点卷积层输出的数据使用非线性激活函数;对所述第二逐点卷积层输出的数据使用线性激活函数;对所述第二深度卷积层输出的数据使用非线性激活函数。
12.如权利要求7-11所述的装置,其特征在于,所述神经网络模型包括输入层、多个隐含层和输出层,所述隐含层进一步包括第一卷积层、全卷积层和全局平均池化层,全卷积层包括至少一个处理单元,其中,输入的所述图像数据经过包括32个输出通道的第一卷积层的处理,得到32个输出通道的所述图像数据的特征图;
所述图像数据的特征图,经过所述全卷积层的处理,得到所述图像数据的局部高维特征数据;
所述图像数据的局部高维特征数据经过全局平均池化层的处理,被池化为所述图像的特征映射。
13.一种图像处理设备,其特征在于,包括:
存储器,用于存储由系统的一个或多个处理器执行的指令,以及
处理器,是系统的处理器之一,用于执行所述指令以实施图像处理方法,所述图像处理方法包括:
获取图像;
所述图像在所述神经网络模型的输入层被处理成至少一层图像数据;
将所述图像数据输入所述神经网络模型的隐含层进行处理,得到所述图像数据的局部高维特征数据,其中所述神经网络模型的隐含层包括多个处理单元,所述多个处理单元中至少部分处理单元彼此互联并且与所述输入层的输出相连;以及
输出所述图像的特征映射,所述图像的特征映射由所述图像数据的局部高维特征池化融合得到;
其中,在至少一个处理单元中,作为所述至少一个处理单元的输入的所述图像的高维特征数据依次经过由第一深度可分离卷积层、第一逐点卷积层、第二逐点卷积层以及第二深度可卷积层构成的快捷连接处理,输出所述图像的局部高维特征数据。
14.如权利要求13所述的设备,其特征在于,所述第一逐点卷积层对所述图像数据进行通道的缩减,以及所述第二逐点卷积层对所述第一逐点卷积层输出的图像数据进行通道的扩展。
15.如权利要求14所述的设备,其特征在于,在所述第一逐点卷积层和所述第二逐点卷积层之间不进行其他卷积操作。
16.如权利要求15所述的设备,其特征在于,所述快捷连接是建立在所述图像数据的高维特征空间中,并提取所述图像数据的局部特征张量,得到所述图像数据的局部高维特征数据。
17.如权利要求16所述的设备,其特征在于,对所述第一深度可分离卷积层输出的数据使用线性激活函数;对所述第一逐点卷积层输出的数据使用非线性激活函数;对所述第二逐点卷积层输出的数据使用线性激活函数;对所述第二深度卷积层输出的数据使用非线性激活函数。
18.如权利要求13-17所述的设备,其特征在于,所述神经网络模型包括输入层、多个隐含层和输出层,所述隐含层进一步包括第一卷积层、全卷积层和全局平均池化层,全卷积层包括至少一个处理单元,其中,输入的所述图像数据经过包括32个输出通道的第一卷积层的处理,得到32个输出通道的所述图像数据的特征图;
所述图像数据的特征图,经过所述全卷积层的处理,得到所述图像数据的局部高维特征数据;
所述图像数据的局部高维特征数据经过全局平均池化层的处理,被池化为所述图像的特征映射。
19.一种使用计算机程序编码的计算机可读存储介质,其特征在于,所述计算机可读介质上存储有指令,所述指令在计算机上执行时使计算机执行权利要求1-6中任一项所述的图像处理方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SG10202005122WA SG10202005122WA (en) | 2020-06-01 | 2020-06-01 | An image processing method and apparatus |
SG10202005122W | 2020-06-01 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113762297A true CN113762297A (zh) | 2021-12-07 |
Family
ID=74758374
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010578086.1A Pending CN113762297A (zh) | 2020-06-01 | 2020-06-23 | 一种图像处理方法及设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113762297A (zh) |
SG (1) | SG10202005122WA (zh) |
-
2020
- 2020-06-01 SG SG10202005122WA patent/SG10202005122WA/en unknown
- 2020-06-23 CN CN202010578086.1A patent/CN113762297A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
SG10202005122WA (en) | 2021-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022042713A1 (zh) | 一种用于计算设备的深度学习训练方法和装置 | |
CN114418069B (zh) | 一种编码器的训练方法、装置及存储介质 | |
CN113326930B (zh) | 数据处理方法、神经网络的训练方法及相关装置、设备 | |
KR102530548B1 (ko) | 신경망 프로세싱 유닛 | |
WO2023231794A1 (zh) | 一种神经网络参数量化方法和装置 | |
Yang et al. | An embedded implementation of CNN-based hand detection and orientation estimation algorithm | |
CN112990440B (zh) | 用于神经网络模型的数据量化方法、可读介质和电子设备 | |
US12086711B2 (en) | Data dividing method and processor for convolution operation | |
WO2021169366A1 (zh) | 数据增强方法和装置 | |
Pinkham et al. | Near-sensor distributed DNN processing for augmented and virtual reality | |
CN116543076B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN112748899A (zh) | 一种数据处理方法和相关设备 | |
Leroux et al. | Multi-fidelity deep neural networks for adaptive inference in the internet of multimedia things | |
Huang et al. | Dynamic sign language recognition based on CBAM with autoencoder time series neural network | |
CN118097293A (zh) | 基于残差图卷积网络和自注意力的小样本数据分类方法及系统 | |
WO2024046473A1 (zh) | 一种数据处理方法及其装置 | |
CN113762297A (zh) | 一种图像处理方法及设备 | |
CN114510911B (zh) | 文本处理方法、装置、计算机设备及存储介质 | |
CN116957006A (zh) | 预测模型的训练方法、装置、设备、介质及程序产品 | |
CN113419702B (zh) | 一种数据累加方法、处理器、电子设备及可读介质 | |
US10311861B1 (en) | System and method for encoding data in a voice recognition integrated circuit solution | |
CN113761992A (zh) | 一种视频动作识别方法及设备 | |
CN115272706B (zh) | 一种图像处理方法、装置、计算机设备及存储介质 | |
WO2024012171A1 (zh) | 二值量化方法、神经网络的训练方法、设备以及存储介质 | |
CN116820524B (zh) | 模型更新方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |