CN112308200B - 神经网络的搜索方法及装置 - Google Patents

神经网络的搜索方法及装置 Download PDF

Info

Publication number
CN112308200B
CN112308200B CN201910695706.7A CN201910695706A CN112308200B CN 112308200 B CN112308200 B CN 112308200B CN 201910695706 A CN201910695706 A CN 201910695706A CN 112308200 B CN112308200 B CN 112308200B
Authority
CN
China
Prior art keywords
resolution
feature map
image
network
super
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.)
Active
Application number
CN201910695706.7A
Other languages
English (en)
Other versions
CN112308200A (zh
Inventor
宋德华
贾旭
王云鹤
许春景
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201910695706.7A priority Critical patent/CN112308200B/zh
Priority to PCT/CN2020/105369 priority patent/WO2021018163A1/zh
Publication of CN112308200A publication Critical patent/CN112308200A/zh
Application granted granted Critical
Publication of CN112308200B publication Critical patent/CN112308200B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4053Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/086Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Physiology (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

本申请公开了人工智能领域中计算机视觉领域的一种神经网络的搜索方法及装置。该搜索方法包括:构建基本单元,该基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,该基本模块包括第一模块,该第一模块用于对第一输入特征图进行降维操作和残差连接操作,该降维操作用于将该第一输入特征图的尺度从原始的第一尺度变换至第二尺度,该第二尺度小于该第一尺度,该残差连接操作用于将该第一输入特征图与经过该第一模块处理后的特征图进行特征相加处理;根据该基本单元和网络结构参数构建搜索空间;在所述搜索空间中进行网络结构搜索确定目标图像超分辨率网络。本申请能够在计算性能一定的情况下,提高超分辨率网络的精度。

Description

神经网络的搜索方法及装置
技术领域
本申请涉及人工智能领域,并且更具体地,涉及一种神经网络的搜索方法及装置。
背景技术
人工智能(artificial intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。换句话说,人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能领域的研究包括机器人,自然语言处理,计算机视觉,决策与推理,人机交互,推荐与搜索,AI基础理论等。
随着人工智能技术的快速发展,神经网络(例如,深度神经网络)近年来在图像、视频以及语音等多种媒体信号的处理与分析中取得了很大的成就。图像超分辨率重构技术是指将低分辨率图像进行重构得到高分辨率图像,通过深度神经网络进行图像超分辨率重构处理具有明显的优势,随着图像超分辨率重构技术效果的提升深度神经网络模型也越来越大。由于移动设备的计算性能和存储空间都非常有限,这极大的限制了超分模型在移动设备上的应用,因此,人们致力于设计轻量级的超分网络模型,在保证一定的识别精度情况下,尽可能减少网络规模。
为了获取轻量级的超分网络模型,将神经网络结构搜索(neural architecturesearch,NAS)的方法应用于图像超分辨率重构技术中。目前,NAS方法中的搜索空间通常是由基本卷积单元构建的搜索空间,搜索空间中可以包括由多个基本单元构建的候选神经网络模型,多个基本单元基于输入特征图尺寸大小在相同特征尺寸上对输入特征图进行非线性变换,这导致神经网络模型中的参数量和计算量成正比,即参数量越大则网络模型的计算量越大。在移动设备的计算性能受限的情况下,只能通过减少参数量而降低计算量,从而限制了用于超分辨率重构的网络模型的性能。因此,在移动设备的计算性能受限制的情况下,如何提高超分辨率神经网络的性能成为一个亟需解决的问题。
发明内容
本申请提供一种神经网络的搜索方法及装置,能够在移动设备的计算性能受限制的情况下,提高超分辨率网络进行图像超分辨率处理时的精度。
第一方面,提供了一种神经网络结构的搜索方法,包括:构建基本单元,该基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,该基本模块包括第一模块,该第一模块用于对第一输入特征图进行降维操作和残差连接操作,该降维操作用于将该第一输入特征图的尺度从原始的第一尺度变换至第二尺度,该第二尺度小于该第一尺度,该残差连接操作用于将该第一输入特征图与经过该第一模块处理后的特征图进行特征相加处理,该第一模块处理后的特征图的尺度和该第一输入特征图的尺度相同;根据该基本单元和网络结构参数构建搜索空间,其中,该网络结构参数包括构建该基本单元使用的基本模块的类型,该搜索空间用于搜索图像超分辨率网络结构;在该搜索空间中进行图像超分辨率网络结构搜索确定目标图像超分辨率网络,该目标图像超分辨率网络用于对待处理图像进行超分辨率处理,该目标图像超分辨率网络中至少包括该第一模块,该目标图像超分辨率网络为计算量小于第一预设阈值且图像超分辨率精度大于第二预设阈值的网络。
需要说明的是,基本单元可以是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,上述网络结构可以包含预先设定好的卷积神经网络中的基础运算或者基础运算的组合,这些基础运算或者基础运算的组合可以统称为基本操作。
例如,基本操作可以是指卷积操作,池化操作,残差连接等,通过基本操作可以使得各个基本模块之间进行连接,从而得到基本单元的网络结构。
上述特征相加可以是指对于同一尺度的特征图,将不同通道特征进行相加。
在本申请的实施例中,第一模块可以对输入特征图进行残差连接,即可以将第一输入特征图与经过第一模块处理后的特征图进行特征相加处理,从而实现能够将第一输入特征图中更多的局部细节信息传递至后面的卷积层。在第一模块中确保有足够的第一输入特征图的局部细节信息传递至后面的卷积层时,司仪模块可以用于对第一输入特征图进行降维。通过降维操作可以降低输入特征图的尺度从而降低模型计算量,同时,残差连接操作可以将前层的信息可以很好地传递到后面的层,这弥补了降维操作信息丢失的缺陷。同时,降维操作还可以快速扩大特征的感受野,让高分辨率像素点的预测更好的考虑上下文的信息,从而提升超分精度。
在一种可能的实现方式中,上述基本单元是用于构建图像超分辨率网络的基础模块。
结合第一方面,在第一方面的某些实现方式中,该降维操作包括池化操作和步长为Q的卷积操作中的至少一项,Q为大于1的正整数。
可选地,池化操作可以是是平均池化操作,或者,池化操作也可以是最大池化操作。
在本申请的实施例中,通过降维操作可以使得第一输入特征图的尺度降低,从而在参数量不变的情况下减少目标图像超分辨率网络的计算量。
结合第一方面,在第一方面的某些实现方式中,该第一模块处理后的特征图为经过升维操作后的特征图,该升维操作是指将经过该降维处理后的特征图的尺度恢复至该第一尺度,该残差连接操作是指将该第一输入特征图与经过所述升维操作处理后的特征图进行特征相加处理。
可选地,上述升维操作可以是指上采样操作,或者,升维操作也可以是指反向卷积操作,其中,上采样操作可以是指采用内插值方法,即在原有图像像素的基础上在像素点之间采用合适的插值算法***新的元素;反卷积操作可以是指卷积操作的逆过程,又称作转置卷积。
在本申请的实施例中,通过升维操作可以使得经过降维操作后的第一输入特征图的尺度从第二尺度变换至原始的第一尺度,即实现经过降维操作后的特征图进行尺度的增加,从而确保在同一尺度下实现残差连接操作。
结合第一方面,在第一方面的某些实现方式中,所述第一模块还用于对所述第一输入特征图进行密集连接操作,其中,所述密集连接操作是指将i-1个卷积层中各个卷积层的输出特征图以及该第一输入特征图进行特征拼接作为第i个卷积层的输入特征图,i为大于1的正整数。
上述特征拼接可以是指将同一尺度的M个特征图拼接成一个具有K通道的特征图,其中,K为大于M的正整数。
在本申请的实施例中,通过采用密集连接操作可以实现网络中最大的信息流通,通过每层都与该层之前的所有层都相连,即每层的输入是前面所有层的输出的拼接。通过密集连接操作使得输入特征图中的信息在整个网络中的保持地更好,从而能够更好弥补降维操作造成的信息丢失的缺陷。
结合第一方面,在第一方面的某些实现方式中,该密集连接操作为循环的密集连接操作,该循环的密集连接操作是指对经过通道压缩处理后的该第一输入特征图进行特征拼接处理。
在本申请的实施例中,通过采用循环操作即循环的密集连接操作,可以加深目标图像超分辨率网络的深度,对于神经网络结构而言网络结构的深度越深,即网络结构中卷积层的数量越多,从而提高目标图像超分辨率网络处理图像的精度。
结合第一方面,在第一方面的某些实现方式中,该第一模块还用于进行重排操作,该重排操作是指将该第一输入特征图的多个第一通道特征按照预设规则进行合并处理生成一个第二通道特征,其中,该第二通道特征的分辨率高于该第一通道特征的分辨率。
结合第一方面,在第一方面的某些实现方式中,该基本模块还包括第二模块和/或第三模块,其中,该第二模块用于对第二输入特征图进行通道压缩操作、该残差连接操作以及该密集连接操作,该通道压缩操作是指对该第二输入特征图进行卷积核为1×1的卷积操作;该第三模块用于对第三输入特征图进行通道交换操作、该残差连接操作以及该密集连接操作,该第三输入特征图中包括M个子特征图,该M子特征图中每个子特征图包括至少两个相邻的通道特征,该通道交换处理是指将该M个子特征图对应的至少两个相邻的通道特征进行重新排序,使得该M个子特征图中不同子特征图对应的通道特征相邻,M为大于1的整数,该第一输入特征图、该第二输入特征图以及该第三输入特征图对应相同的图像。
结合第一方面,在第一方面的某些实现方式中,该在该搜索空间中进行图像超分辨率网络结构搜索确定目标图像超分辨率网络,包括:
在该搜索空间中通过进化算法进行图像超分辨率网络结构搜索确定第一图像超分辨率网络;
通过多级加权联合损失函数对该第一图像超分辨率网络进行反向传播迭代训练确定该目标图像超分辨率网络,其中,该多级加权联合损失函数是根据该第一图像超分辨率网络中的每个该基本单元输出的特征图对应的预测超分辨率图像与样本超分辨率图像之间的损失确定的。
应理解,在通过多级加权联合损失函数对该第一图像超分辨率网络时还需要训练图像,其中,训练图像可以是指样本图像即低分辨率图像以及低分辨率对应的样本超分辨率图像。
在本申请的实施例中可以通过对进化算法确定的第一图像超分辨率网络通过多级加权联合损失函数进行二次训练,最终确定目标图像超分辨率网络的参数得到目标图像超分辨率网络,从而提高目标图像超分辨率网络处理图像的精度。
结合第一方面,在第一方面的某些实现方式中,该多级加权联合损失函数是根据以下等式得到的,
其中,L表示该多级加权联合损失函数,Lk表示该第一图像超分辨率网络的第k个所述基本单元的损失值,该损失值是指该第k个该基本单元的输出特征图对应的预测超分辨率图像与样本超分辨率图像之间的图像损失,λk,t表示在t时刻该第k层的损失值的权重,N表示该第一图像超分辨率网络包括的该基本单元的数量,N为大于或等于1的整数。
在本申请的实施例中,多级加权联合损失函数中各个中间层图像损失的权重可以随着时间(或者,迭代次数)的变化而变化。该损失函数可以联合各个中间层的预测图像损失,并通过加权方式体现不同层的重要程度,其中,各个中间层图像损失的权重值可以随着时间变化而变化,这样有利于更加充分地训练底层基本单元的参数,从而提升超分辨率网络的性能。
结合第一方面,在第一方面的某些实现方式中,该在该搜索空间中通过进化算法进行图像超分辨率网络结构搜索确定第一图像超分辨率网络,包括:
根据该基本单元随机生成P个候选网络结构,P为大于1的整数;
采用该多级加权联合损失函数训练该P个候选网络结构;
评估训练后的该P个候选网络结构中每个候选网络结构的性能参数,该性能参数包括峰值性噪比,该峰值信噪比用于指示通过该每个候选网络结构得到的预测超分图像与样本超分图像之间的差异;
根据该候选网络的性能参数确定该第一图像超分辨率网络。
应理解,在评估P个候选网络结构的性能参数时需要用训练图像和多级加权联合损失函数对候选网络结构进行训练,其中,训练图像可以是指样本图像即低分辨率图像以及低分辨率对应的样本超分辨率图像。
第二方面,提供了一种图像处理方法,包括:获取待处理图像;根据目标图像超分辨率网络对该待处理图像进行超分辨率处理得到该待处理图像的目标图像,其中,该目标图像为该待处理图像对应的超分辨率图像,该目标图像超分辨率网络是在搜索空间中通过图像超分辨率网络结构搜索确定的网络,该搜索空间是通过基本单元和网络结构参数构建的,该搜索空间用于搜索图像超分辨率网络结构,该网络结构参数包括构建该基本单元使用的基本模块的类型,该基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,该基本模块包括第一模块,该第一模块用于对第一输入特征图进行残差连接操作和降维操作,该残差连接操作是指将该第一输入特征图与经过该第一模块处理后的特征图进行特征相加处理,该降维操作用于将该第一输入特征图的尺度从原始的第一尺度变换至第二尺度,该第二尺度小于该第一尺度,该目标图像超分辨率网络中至少包括该第一模块,该第一模块处理后的特征图的尺度和该第一输入特征图的尺度相同。
在一种可能的实现方式中,上述基本单元是用于构建图像超分辨率网络的基础模块。
结合第二方面,在第二方面的某些实现方式中,该降维操作包括池化操作和步长为Q的卷积操作中的至少一项,Q为大于1的正整数。
结合第二方面,在第二方面的某些实现方式中,该第一模块处理后的特征图为经过升维操作后的特征图,该升维操作是指将经过该降维处理后的特征图的尺度恢复至该第一尺度,该残差连接操作是指将该第一输入特征图与经过该升维操作处理后的特征图进行特征相加处理。
结合第二方面,在第二方面的某些实现方式中,该第一模块还用于对该第一输入特征图进行密集连接操作,其中,该密集连接操作是指将i-1个卷积层中各个卷积层的输出特征图以及该第一输入特征图进行特征拼接作为第i个卷积层的输入特征图,i为大于1的正整数。
结合第二方面,在第二方面的某些实现方式中,该密集连接操作为循环的密集连接操作,该循环的密集连接操作是指对经过通道压缩处理后的该第一输入特征图进行特征拼接处理。
结合第二方面,在第二方面的某些实现方式中,该第一模块还用于进行重排操作,该重排操作是指将该第一输入特征图的多个第一通道特征按照预设规则进行合并处理生成一个第二通道特征,其中,该第二通道特征的分辨率高于该第一通道特征的分辨率。
结合第二方面,在第二方面的某些实现方式中,该基本模块还包括第二模块和/或第三模块,其中,该第二模块用于对第二输入特征图进行通道压缩操作、该残差连接操作以及该密集连接操作,该通道压缩操作是指对该第二输入特征图进行卷积核为1×1的卷积操作;该第三模块用于对第三输入特征图进行通道交换操作、该残差连接操作以及该密集连接操作,该第三输入特征图中包括M个子特征图,该M子特征图中每个子特征图包括至少两个相邻的通道特征,该通道交换处理是指将该M个子特征图对应的至少两个相邻的通道特征进行重新排序,使得该M个子特征图中不同子特征图对应的通道特征相邻,M为大于1的整数,该第一输入特征图、该第二输入特征图以及该第三输入特征图对应相同的图像。
结合第二方面,在第二方面的某些实现方式中,该目标图像超分辨率网络是通过多级加权联合损失函数对第一图像超分辨率网络进行反向传播迭代训练确定的网络,其中,该多级加权联合损失函数是根据该第一图像超分辨率网络中的每个该基本单元输出的特征图对应的预测超分辨率图像与样本超分辨率图像之间的损失确定的,该第一图像超分变率网络是指在该搜索空间中通过进化算法进行图像超分辨率网络结构搜索确定的网络。
结合第二方面,在第二方面的某些实现方式中,该多级加权联合损失函数是根据以下等式得到的,
其中,L表示该多级加权联合损失函数,Lk表示该第一图像超分辨率网络的第k个该基本单元的损失值,该损失值是指该第k个该基本单元的输出特征图对应的预测超分辨率图像与该样本超分辨率图像之间的图像损失,λk,t表示在t时刻该第k层的损失值的权重,N表示该第一图像超分辨率网络包括的该基本单元的数量,N为大于或等于1的整数。
结合第二方面,在第二方面的某些实现方式中,该第一图像超分辨率网络是在P个候选网络结构中每个候选网络结构的性能参数确定的,该P个候选网络结构是根据该基本单元随机生成的,该性能参数是指评估通过采用该多级加权联合损失函数训练后的该P个候选网络结构的性能的参数,该性能参数包括峰值性噪比,该峰值信噪比用于指示通过该每个候选网络结构得到的预测超分图像与样本超分图像之间的差异,P为大于1的整数。
第三方面,提供了一种图像处理方法,应用于具有显示屏和摄像头的电子设备,该方法包括:检测到用户用于打开相机的第一操作;响应于该第一操作,在该显示屏上显示拍摄界面,该拍摄界面上包括取景框,该取景框内包括第一图像;检测到该用户指示相机的第二操作;响应于该第二操作,在该取景框内显示第二图像,该第二图像为针对该摄像头采集到的该第一图像进行超分辨率处理后的图像,其中,目标图像超分辨率网络应用于该超分辨率处理过程中,目标图像超分辨率网络是在搜索空间中通过网络结构搜索确定的网络,该搜索空间是通过基本单元和网络结构参数构建的,该搜索空间用于搜索图像超分辨率网络结构,该网络结构参数包括构建该基本单元使用的基本模块的类型,该基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,该基本模块包括第一模块,该第一模块用于对第一输入特征图进行残差连接操作和降维操作,该残差连接操作是指将该第一输入特征图与经过该第一模块处理后的特征图进行特征相加处理,该降维操作用于将该第一输入特征图的尺度从原始的第一尺度变换至第二尺度,该第二尺度小于该第一尺度,该目标图像超分辨率网络中至少包括该第一模块,该第一模块处理后的特征图的尺度和该第一输入特征图的尺度相同。
在一种可能的实现方式中,上述基本单元是用于构建图像超分辨率网络的基础模块。
结合第三方面,在第三方面的某些实现方式中,该降维操作可以包括池化操作和步长为Q的卷积操作中的至少一项,Q为大于1的正整数。
结合第三方面,在第三方面的某些实现方式中,该第一模块处理后的特征图为经过升维操作后的特征图,该升维操作是指将经过该降维处理后的特征图的尺度恢复至该第一尺度,该残差连接操作是指将该第一输入特征图与经过该升维操作处理后的特征图进行特征相加处理。
结合第三方面,在第三方面的某些实现方式中,该第一模块还用于对该第一输入特征图进行密集连接操作,其中,该密集连接操作是指将i-1个卷积层中各个卷积层的输出特征图以及该第一输入特征图进行特征拼接作为第i个卷积层的输入特征图,i为大于1的正整数。
结合第三方面,在第三方面的某些实现方式中,该密集连接操作为循环的密集连接操作,该循环的密集连接操作是指对经过通道压缩处理后的该第一输入特征图进行特征拼接处理。
结合第三方面,在第三方面的某些实现方式中,该第一模块还用于进行重排操作,该重排操作是指将该第一输入特征图的多个第一通道特征按照预设规则进行合并处理生成一个第二通道特征,其中,该第二通道特征的分辨率高于该第一通道特征的分辨率。
结合第三方面,在第三方面的某些实现方式中,该基本模块还包括第二模块和/或第三模块,其中,该第二模块用于对第二输入特征图进行通道压缩操作、该残差连接操作以及该密集连接操作,该通道压缩操作是指对该第二输入特征图进行卷积核为1×1的卷积操作;该第三模块用于对第三输入特征图进行通道交换操作、该残差连接操作以及该密集连接操作,该第三输入特征图中包括M个子特征图,该M子特征图中每个子特征图包括至少两个相邻的通道特征,该通道交换处理是指将该M个子特征图对应的至少两个相邻的通道特征进行重新排序,使得该M个子特征图中不同子特征图对应的通道特征相邻,该M为大于1的整数,该第一输入特征图、该第二输入特征图以及该第三输入特征图对应相同的图像。
结合第三方面,在第三方面的某些实现方式中,该目标图像超分辨率网络是通过多级加权联合损失函数对第一图像超分辨率网络进行反向传播迭代训练确定的网络,其中,该多级加权联合损失函数是根据该第一图像超分辨率网络中的每个该基本单元输出的特征图对应的预测超分辨率图像与样本超分辨率图像之间的损失确定的,该第一图像超分变率网络是指在该搜索空间中通过进化算法进行图像超分辨率网络结构搜索确定的网络。
结合第三方面,在第三方面的某些实现方式中,该多级加权联合损失函数是根据以下等式得到的,
其中,L表示该多级加权联合损失函数,Lk表示该第一图像超分辨率网络的第k个基本单元的损失值,该损失值是指该第k个该基本单元的输出特征图对应的预测超分辨率图像与该样本超分辨率图像之间的图像损失,λk,t表示在t时刻该第k层的损失值的权重,N表示该第一图像超分辨率网络包括的该基本单元的数量,N为大于或等于1的整数。
结合第三方面,在第三方面的某些实现方式中,该第一图像超分辨率网络是在P个候选网络结构中每个候选网络结构的性能参数确定的,该P个候选网络结构是根据该基本单元随机生成的,该性能参数是指评估通过采用该多级加权联合损失函数训练后的该P个候选网络结构的性能的参数,该性能参数包括峰值性噪比,该峰值信噪比用于指示通过该每个候选网络结构得到的预测超分图像与样本超分图像之间的差异,P为大于1的整数。
应理解,在上述第一方面中对相关内容的扩展、限定、解释和说明也适用于第二方面和第三方面中相同的内容。
第四方面,提供了一种神经网络的搜索装置,该装置包括:存储器,用于存储程序;处理器,用于执行该存储器存储的程序,当该存储器存储的程序被执行时,该处理器用于执行:构建基本单元,该基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,该基本模块包括第一模块,该第一模块用于对第一输入特征图进行降维操作和残差连接操作,该降维操作用于将该第一输入特征图的尺度从原始的第一尺度变换至第二尺度,该第二尺度小于该第一尺度,该残差连接操作用于将该第一输入特征图与经过该第一模块处理后的特征图进行特征相加处理,该第一模块处理后的特征图的尺度和该第一输入特征图的尺度相同;根据该基本单元和网络结构参数构建搜索空间,其中,该网络结构参数包括构建该基本单元使用的基本模块的类型,该搜索空间用于搜索图像超分辨率网络结构;在该搜索空间中进行图像超分辨率网络结构搜索确定目标图像超分辨率网络,该目标图像超分辨率网络用于对待处理图像进行超分辨率处理,该目标图像超分辨率网络中至少包括该第一模块,该目标图像超分辨率网络为计算量小于第一预设阈值且图像超分辨率精度大于第二预设阈值的网络。
在一种可能的实现方式中,上述神经网络的搜索装置中包括的处理器还用于执行第一方面中的任意一种实现方式中的搜索方法。
第五方面,提供一种图像处理装置,该装置包括:存储器,用于存储程序;处理器,用于执行该存储器存储的程序,当该存储器存储的程序被执行时,该处理器用于执行:获取待处理图像;根据目标图像超分辨率网络对该待处理图像进行超分辨率处理得到该待处理图像的目标图像,其中,该目标图像为该待处理图像对应的超分辨率图像,该目标图像超分辨率网络是在搜索空间中通过图像超分辨率网络结构搜索确定的网络,该搜索空间是通过基本单元和网络结构参数构建的,该搜索空间用于搜索图像超分辨率网络结构,该网络结构参数包括构建该基本单元使用的基本模块的类型,该基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,该基本模块包括第一模块,该第一模块用于对第一输入特征图进行残差连接操作和降维操作,该残差连接操作是指将该第一输入特征图与经过该第一模块处理后的特征图进行特征相加处理,该降维操作用于将该第一输入特征图的尺度从原始的第一尺度变换至第二尺度,该第二尺度小于该第一尺度,该目标图像超分辨率网络中至少包括该第一模块,该第一模块处理后的特征图的尺度和该第一输入特征图的尺度相同。
在一种可能的实现方式中,上述图像处理装置中包括的处理器还用于执行第二方面中的任意一种实现方式中方法。
第六方面,提供一种图像处理装置,该装置包括:存储器,用于存储程序;处理器,用于执行该存储器存储的程序,当该存储器存储的程序被执行时,该处理器用于执行:检测到用户用于打开相机的第一操作;响应于该第一操作,在该显示屏上显示拍摄界面,该拍摄界面上包括取景框,该取景框内包括第一图像;检测到该用户指示相机的第二操作;响应于该第二操作,在该取景框内显示第二图像,该第二图像为针对该摄像头采集到的该第一图像进行超分辨率处理后的图像,其中,目标图像超分辨率网络应用于该超分辨率处理过程中,目标图像超分辨率网络是在搜索空间中通过图像超分辨率网络结构搜索确定的网络,该搜索空间是通过基本单元和网络结构参数构建的,该搜索空间用于搜索图像超分辨率网络结构,该网络结构参数包括构建该基本单元使用的基本模块的类型,该基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,该基本模块包括第一模块,该第一模块用于对第一输入特征图进行残差连接操作和降维操作,该残差连接操作是指将该第一输入特征图与经过该第一模块处理后的特征图进行特征相加处理,该降维操作用于将该第一输入特征图的尺度从原始的第一尺度变换至第二尺度,该第二尺度小于该第一尺度,该目标图像超分辨率网络中至少包括该第一模块,该第一模块处理后的特征图的尺度和该第一输入特征图的尺度相同。
在一种可能的实现方式中,上述图像处理装置中包括的处理器还用于执行第三方面中的任意一种实现方式中方法。
第七方面,提供一种计算机可读介质,该计算机可读介质存储用于设备执行的程序代码,该程序代码包括用于执行上述第一方面至第三方面以及第一方面至第三方面中的任意一种实现方式中的方法。
第八方面,提供一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述第一方面至第三方面以及第一方面至第三方面中的任意一种实现方式中的方法。
第九方面,提供一种芯片,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,执行上述第一方面至第三方面以及第一方面至第三方面中的任意一种实现方式中的方法。
可选地,作为一种实现方式,所述芯片还可以包括存储器,所述存储器中存储有指令,所述处理器用于执行所述存储器上存储的指令,当所述指令被执行时,所述处理器用于执行上述第一方面至第三方面以及第一方面至第三方面中的任意一种实现方式中的方法。
附图说明
图1是本申请实施例提供的一种人工智能主体框架示意图;
图2是本申请实施例提供的一种应用场景的示意图;
图3是本申请实施例提供的另一种应用场景的示意图;
图4是本申请实施例提供的再一种应用场景的示意图;
图5是本申请实施例提供的再一种应用场景的示意图;
图6是本申请实施例提供的***架构的结构示意图;
图7是本申请实施例提供的一种卷积神经网络结构示意图;
图8是本申请实施例提供的另一种卷积神经网络结构示意图;
图9是本申请实施例提供的一种芯片硬件结构示意图;
图10是本申请实施例提供了一种***架构的示意图;
图11是本申请实施提供的神经网络的搜索方法的示意性流程图;
图12是本申请实施例提供的一种目标图像超分辨率网络的示意图;
图13是本申请实施例提供的一种第一模块的结构示意图;
图14是本申请实施例提供的另一种第一模块的结构示意图;
图15是本申请实施例提供的再一种第一模块的结构示意图;
图16是本申请实施例提供重排操作的示意图;
图17是本申请实施例提供的一种第二模块的结构示意图;
图18是本申请实施例提供的一种第三模块的结构示意图;
图19是本申请实施例提供的通道交换处理的示意图;
图20是本申请实施例提供的一种搜索图像超分辨率网络的示意图;
图21是本申请实施例提供的通过多级加权联合损失函数进行网络训练的示意图;
图22是本申请实施例提供的基于进化算法进行网络结构搜索的示意图;
图23是通过本申请实施例的目标超分辨率网络进行图像处理后的效果示意图;
图24是通过本申请实施例的目标超分辨率网络进行图像处理后的效果示意图;
图25是本申请实施例提供的图像处理方法的示意性流程图;
图26是本申请实施例提供的图像处理方法的示意性流程图;
图27是本申请实施例提供的一组显示界面示意图;
图28是本申请实施例提供的另一组显示界面示意图;
图29是本申请实施例的神经网络的搜索装置的示意性框图;
图30是本申请实施例的图像处理装置的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1示出一种人工智能主体框架示意图,该主体框架描述了人工智能***总体工作流程,适用于通用的人工智能领域需求。
下面从“智能信息链”(水平轴)和“信息技术(information technology,IT)价值链”(垂直轴)两个维度对上述人工智能主题框架100进行详细的阐述。
“智能信息链”反映从数据的获取到处理的一列过程。举例来说,可以是智能信息感知、智能信息表示与形成、智能推理、智能决策、智能执行与输出的一般过程。在这个过程中,数据经历了“数据—信息—知识—智慧”的凝练过程。
“IT价值链”从人智能的底层基础设施、信息(提供和处理技术实现)到***的产业生态过程,反映人工智能为信息技术产业带来的价值。
(1)基础设施110
基础设施为人工智能***提供计算能力支持,实现与外部世界的沟通,并通过基础平台实现支撑。
基础设施可以通过传感器与外部沟通,基础设施的计算能力可以由智能芯片提供。
这里的智能芯片可以是中央处理器(central processing unit,CPU)、神经网络处理器(neural-network processing unit,NPU)、图形处理器(graphics processingunit,GPU)、专门应用的集成电路(application specific integrated circuit,ASIC)以及现场可编程门阵列(field programmable gate array,FPGA)等硬件加速芯片。
基础设施的基础平台可以包括分布式计算框架及网络等相关的平台保障和支持,可以包括云存储和计算、互联互通网络等。
例如,对于基础设施来说,可以通过传感器和外部沟通获取数据,然后将这些数据提供给基础平台提供的分布式计算***中的智能芯片进行计算。
(2)数据120
基础设施的上一层的数据用于表示人工智能领域的数据来源。该数据涉及到图形、图像、语音、文本,还涉及到传统设备的物联网数据,包括已有***的业务数据以及力、位移、液位、温度、湿度等感知数据。
(3)数据处理130
上述数据处理通常包括数据训练,机器学习,深度学习,搜索,推理,决策等处理方式。
其中,机器学习和深度学习可以对数据进行符号化和形式化的智能信息建模、抽取、预处理、训练等。
推理是指在计算机或智能***中,模拟人类的智能推理方式,依据推理控制策略,利用形式化的信息进行机器思维和求解问题的过程,典型的功能是搜索与匹配。
决策是指智能信息经过推理后进行决策的过程,通常提供分类、排序、预测等功能。
(4)通用能力140
对数据经过上面提到的数据处理后,进一步基于数据处理的结果可以形成一些通用的能力,比如可以是算法或者一个通用***,例如,翻译,文本的分析,计算机视觉的处理,语音识别,图像的识别等等。
(5)智能产品及行业应用150
智能产品及行业应用指人工智能***在各领域的产品和应用,是对人工智能整体解决方案的封装,将智能信息决策产品化、实现落地应用,其应用领域主要包括:智能制造、智能交通、智能家居、智能医疗、智能安防、自动驾驶,平安城市,智能终端等。
应用场景一:智能终端拍照领域
在一个实施例中,如图2所示,本申请实施例的搜索神经网络结构的方法可以应用于智能终端设备(例如,手机)进行实时图像超分辨率技术。通过本申请实施例的搜索神经网络结构的方法可以确定应用于智能终端拍摄领域的目标图像超分辨率网络。通过目标图像超分辨率网络当用户使用智能终端拍摄远距离物体或者细小物体时,拍摄的图像分辨率比较低,细节不清晰。用户可以使用本申请实施例提供的目标图像超分辨率网络在智能终端上实现图像超分辨率处理,从而能够将低分辨率的图像转换成高分辨率图像,使得拍摄物体更加清晰。
示例性地,本申请提出了一种图像处理方法,应用于具有显示屏和摄像头的电子设备,该方法包括:检测到用户用于打开相机的第一操作;响应于所述第一操作,在所述显示屏上显示拍摄界面,所述拍摄界面上包括取景框,所述取景框内包括第一图像;检测到所述用户指示相机的第二操作;响应于所述第二操作,在所述取景框内显示第二图像,所述第二图像为针对所述摄像头采集到的所述第一图像进行超分辨率处理后的图像,其中,目标超分辨率神经网络应用于所述超分辨率处理过程中。
其中,上述目标图像超分辨率网络是在搜索空间中通过图像超分辨率网络结构搜索确定的网络,所述搜索空间是通过基本单元和网络结构参数构建的,所述搜索空间用于搜索图像超分辨率网络结构,所述网络结构参数包括构建所述基本单元使用的基本模块的类型,所述基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,所述基本模块至少包括第一模块,所述第一模块用于对第一输入特征图进行残差连接操作和降维操作,所述残差连接操作是指将所述第一输入特征图与经过所述第一模块处理后的特征图进行特征相加处理,所述降维操作用于将所述第一输入特征图的尺度从原始的第一尺度变换至第二尺度,所述第二尺度小于所述第一尺度,所述目标图像超分辨率网络中至少包括所述第一模块,所述第一模块处理后的特征图的尺度和所述第一输入特征图的尺度相同。
可选地,在一种可能的实现方式中,所述基本单元是用于构建图像超分辨率网络的基础模块。
可选地,在一种可能的实现方式中,所述降维操作可以包括池化操作和步长为Q的卷积操作中的至少一项,Q为大于1的正整数。
可选地,在一种可能的实现方式中,所述第一模块处理后的特征图为经过升维操作后的特征图,所述升维操作是指将经过所述降维处理后的特征图的尺度恢复至所述第一尺度,所述残差连接操作是指将所述第一输入特征图与经过所述升维操作处理后的特征图进行特征相加处理。
可选地,在一种可能的实现方式中,所述第一模块还用于对所述第一输入特征图进行密集连接操作,其中,所述密集连接操作是指将i-1个卷积层中各个卷积层的输出特征图以及所述第一输入特征图进行特征拼接作为第i个卷积层的输入特征图,i为大于1的正整数。
可选地,在一种可能的实现方式中,所述密集连接操作为循环的密集连接操作,所述循环的密集连接操作是指对经过通道压缩处理后的所述第一输入特征图进行特征拼接处理。
可选地,在一种可能的实现方式中,所述第一模块还用于进行重排操作,所述重排操作是指将所述第一输入特征图的多个第一通道特征按照预设规则进行合并处理生成一个第二通道特征,其中,所述第二通道特征的分辨率高于所述第一通道特征的分辨率。
可选地,在一种可能的实现方式中,所述基本模块还包括第二模块和/或第三模块,其中,所述第二模块用于对第二输入特征图进行通道压缩操作、所述残差连接操作以及所述密集连接操作,所述通道压缩操作是指对所述第二输入特征图进行卷积核为1×1的卷积操作;所述第三模块用于对第三输入特征图进行通道交换操作、所述残差连接操作以及所述密集连接操作,所述第三输入特征图中包括M个子特征图,所述M子特征图中每个子特征图包括至少两个相邻的通道特征,所述通道交换处理是指将所述M个子特征图对应的至少两个相邻的通道特征进行重新排序,使得所述M个子特征图中不同子特征图对应的通道特征相邻,所述M为大于1的整数,所述第一输入特征图、所述第二输入特征图以及所述第三输入特征图对应相同的图像。
可选地,在一种可能的实现方式中,所述目标图像超分辨率网络是通过多级加权联合损失函数对第一图像超分辨率网络进行反向传播迭代训练确定的网络,其中,所述多级加权联合损失函数是根据所述第一图像超分辨率网络中的每个所述基本单元输出的特征图对应的预测超分辨率图像与样本超分辨率图像之间的损失确定的,所述第一图像超分变率网络是指在所述搜索空间中通过进化算法进行图像超分辨率网络结构搜索确定的网络。
可选地,在一种可能的实现方式中,所述多级加权联合损失函数是根据以下等式得到的,
其中,L表示所述多级加权联合损失函数,Lk表示所述第一图像超分辨率网络的第k个所述基本单元的损失值,所述损失值是指所述第k个所述基本单元的输出特征图得到的预测超分辨率图像与所述样本超分辨率图像之间的图像损失,λk,t表示在t时刻所述第k层的损失值的权重,N表示所述第一图像超分辨率网络包括的所述基本单元的数量,N为大于或等于1的整数。
可选地,在一种可能的实现方式中,所述第一图像超分辨率网络是在P个候选网络结构中每个候选网络结构的性能参数确定的,所述P个候选网络结构是根据所述基本单元随机生成的,所述性能参数是指评估通过采用所述多级加权联合损失函数训练后的所述P个候选网络结构的性能的参数,所述性能参数包括峰值性噪比,所述峰值信噪比用于指示通过所述每个候选网络结构得到的预测超分图像与样本超分图像之间的差异。
需要说明的是,本申请实施例提供的应用于智能终端的拍照领域的目标图像超分辨率网络同样适用于后面图10至图22中相关实施例中对目标图像超分辨率网络相关内容的扩展、限定、解释和说明,此处不再赘述。
示例性地,如图2所示目标图像超分辨率网络应用于智能终端中的示意图,当用户使用智能终端210(例如,手机)拍摄距离较远的物体时获取的低分辨率图像为220或者图像230,图2所示的超分辨率240(super-resolution,SR)可以是本申请实施例中的目标图像超分辨率网络,通过目标图像超分辨率网络的处理后可以得到目标图像,例如,将图像220经过超分辨率处理后可以得到超分辨率图像221;将图像230经过超分辨率处理后可以得到超分辨率图像231。
需要说明的是,智能终端210可以是具有摄像头的电子设备,例如,智能终端可以是有图像处理功能的移动电话、平板个人电脑(tablet personal computer,TPC)、媒体播放器、智能电视、笔记本电脑(laptop computer,LC)、个人数字助理(personal digitalassistant,PDA)、个人计算机(personal computer,PC)、照相机、摄像机、智能手表、可穿戴式设备(wearable device,WD)或者,自动驾驶车辆中的车载终端等,本申请实施例对此不作限定。
应用场景二:安防领域
在一个实施例中,如图3所示,本申请实施例的神经网络的搜索方法可以应用于安防领域。例如,公共场合的监控设备采集到的图片(或者,视频)往往受到天气、距离等因素的影响,存在图像模糊、分辨率低等问题。通过目标图像超分辨率网络可以对采集到的图片进行超分辨率重建,可以为公安人员恢复出车牌号码、清晰人脸等重要信息,为案件侦破提供重要的线索信息。
示例性地,本申请提供了一种图像处理方法,该方法包括:获取街景画面;根据目标图像超分辨率网络对该街景画面进行超分辨率处理,得到该街景画面的超分辨率图像;根据该街景画面的超分辨率图像,识别该超分辨率图像中的信息。
其中,上述目标图像超分辨率网络是在搜索空间中通过图像超分辨率网络结构搜索确定的网络,所述搜索空间是通过基本单元和网络结构参数构建的,所述搜索空间用于搜索图像超分辨率网络结构,所述网络结构参数包括构建所述基本单元使用的基本模块的类型,所述基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,所述基本模块至少包括第一模块,所述第一模块用于对第一输入特征图进行残差连接操作和降维操作,所述残差连接操作是指将所述第一输入特征图与经过所述第一模块处理后的特征图进行特征相加处理,所述降维操作用于将所述第一输入特征图的尺度从原始的第一尺度变换至第二尺度,所述第二尺度小于所述第一尺度,所述目标图像超分辨率网络中至少包括所述第一模块,所述第一模块处理后的特征图的尺度和所述第一输入特征图的尺度相同。
需要说明的是,本申请实施例提供的应用于安防领域的目标图像超分辨率网络同样适用于后面图10至图22中相关实施例中对目标图像超分辨率网络相关内容的扩展、限定、解释和说明,此处不再赘述。
应用场景三:医学成像领域
在一个实施例中,如图4所示,本申请实施例的神经网络的搜索方法可以应用于医学成像领域。例如,目标图像超分辨率网络可以对医学图像进行超分辨率重建,可以在不增加高分辨率成像技术成本的基础上,降低对成像环境的要求,通过复原出的清晰医学影像,实现对病变细胞的精准探测,有助于医生对患者病情做出更好的诊断。
示例性地,本申请提供了一种图像处理方法,该方法包括:获取医学影像画面;根据目标图像超分辨率网络对该医学影像画面进行超分辨率处理,得到该医学影像画面的超分辨率图像;根据该医学影像画面的超分辨率图像识别和分析该超分辨率图像中的信息。
其中,上述目标图像超分辨率网络是在搜索空间中通过图像超分辨率网络结构搜索确定的网络,所述搜索空间是通过基本单元和网络结构参数构建的,所述搜索空间用于搜索图像超分辨率网络结构,所述网络结构参数包括构建所述基本单元使用的基本模块的类型,所述基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,所述基本模块包括第一模块,所述第一模块用于对第一输入特征图进行残差连接操作和降维操作,所述残差连接操作是指将所述第一输入特征图与经过所述第一模块处理后的特征图进行特征相加处理,所述降维操作用于将所述第一输入特征图的尺度从原始的第一尺度变换至第二尺度,所述第二尺度小于所述第一尺度,所述目标图像超分辨率网络中至少包括所述第一模块,所述第一模块处理后的特征图的尺度和所述第一输入特征图的尺度相同。
需要说明的是,本申请实施例提供的应用于医学成像领域的目标图像超分辨率网络同样适用于后面图10至图22中相关实施例中对目标图像超分辨率网络相关内容的扩展、限定、解释和说明,此处不再赘述。
应用场景四:图像压缩领域
在一个实施例中,如图5所示,本申请实施例的神经网络的搜索方法可以应用于图像压缩领域。例如,在视频会议等实时性要求较高的场合,可以在传输前预先对图片进行压缩,等待传输完毕,再由接收端解码后通过目标图像超分辨率网络进行超分辨率重建技术复原出原始图像序列,极大减少存储所需的空间及传输所需的带宽。
示例性地,本申请提供了一种图像处理方法,该方法包括:获取压缩图像;根据目标图像超分辨率网络对该压缩图像进行超分辨率处理,得到该压缩图像的超分辨率图像;根据该压缩图像的超分辨率图像识别该超分辨率图像中的信息。
其中,上述目标图像超分辨率网络是在搜索空间中通过图像超分辨率网络结构搜索确定的网络,所述搜索空间是通过基本单元和网络结构参数构建的,所述搜索空间用于搜索图像超分辨率网络结构,所述网络结构参数包括构建所述基本单元使用的基本模块的类型,所述基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,所述基本模块至少包括第一模块,所述第一模块用于对第一输入特征图进行残差连接操作和降维操作,所述残差连接操作是指将所述第一输入特征图与经过所述第一模块处理后的特征图进行特征相加处理,所述降维操作用于将所述第一输入特征图的尺度从原始的第一尺度变换至第二尺度,所述第二尺度小于所述第一尺度,所述目标图像超分辨率网络中至少包括所述第一模块,所述第一模块处理后的特征图的尺度和所述第一输入特征图的尺度相同。
需要说明的是,本申请实施例提供的应用于图像压缩领域的目标图像超分辨率网络同样适用于后面图10至图22中相关实施例中对目标图像超分辨率网络相关内容的扩展、限定、解释和说明,此处不再赘述。
应理解,上述为对应用场景的举例说明,并不对本申请的应用场景作任何限定。
由于本申请实施例涉及大量神经网络的应用,为了便于理解,下面先对本申请实施例可能涉及的神经网络的相关术语和概念进行介绍。
(1)神经网络
神经网络可以是由神经单元组成的,神经单元可以是指以xs和截距1为输入的运算单元,该运算单元的输出可以为:
其中,s=1、2、……n,n为大于1的自然数,Ws为xs的权重,b为神经单元的偏置。f为神经单元的激活函数(activation functions),用于将非线性特性引入神经网络中,来将神经单元中的输入信号转换为输出信号。该激活函数的输出信号可以作为下一层卷积层的输入,激活函数可以是sigmoid函数。神经网络是将多个上述单一的神经单元联结在一起形成的网络,即一个神经单元的输出可以是另一个神经单元的输入。每个神经单元的输入可以与前一层的局部接受域相连,来提取局部接受域的特征,局部接受域可以是由若干个神经单元组成的区域。
(2)深度神经网络
深度神经网络(deep neural network,DNN),也称多层神经网络,可以理解为具有多层隐含层的神经网络。按照不同层的位置对DNN进行划分,DNN内部的神经网络可以分为三类:输入层,隐含层,输出层。一般来说第一层是输入层,最后一层是输出层,中间的层数都是隐含层。层与层之间是全连接的,也就是说,第i层的任意一个神经元一定与第i+1层的任意一个神经元相连。
虽然DNN看起来很复杂,但是就每一层的工作来说,其实并不复杂,简单来说就是如下线性关系表达式:其中,/>是输入向量,/>是输出向量,/>是偏移向量,W是权重矩阵(也称系数),α()是激活函数。每一层仅仅是对输入向量/>经过如此简单的操作得到输出向量/>由于DNN层数多,系数W和偏移向量/>的数量也比较多。这些参数在DNN中的定义如下所述:以系数W为例:假设在一个三层的DNN中,第二层的第4个神经元到第三层的第2个神经元的线性系数定义为/>上标3代表系数W所在的层数,而下标对应的是输出的第三层索引2和输入的第二层索引4。
综上,第L-1层的第k个神经元到第L层的第j个神经元的系数定义为
需要注意的是,输入层是没有W参数的。在深度神经网络中,更多的隐含层让网络更能够刻画现实世界中的复杂情形。理论上而言,参数越多的模型复杂度越高,“容量”也就越大,也就意味着它能完成更复杂的学习任务。训练深度神经网络的也就是学习权重矩阵的过程,其最终目的是得到训练好的深度神经网络的所有层的权重矩阵(由很多层的向量W形成的权重矩阵)。
(3)卷积神经网络
卷积神经网络(convolutional neuron network,CNN)是一种带有卷积结构的深度神经网络。卷积神经网络包含了一个由卷积层和子采样层构成的特征抽取器,该特征抽取器可以看作是滤波器。卷积层是指卷积神经网络中对输入信号进行卷积处理的神经元层。在卷积神经网络的卷积层中,一个神经元可以只与部分邻层神经元连接。一个卷积层中,通常包含若干个特征平面,每个特征平面可以由一些矩形排列的神经单元组成。同一特征平面的神经单元共享权重,这里共享的权重就是卷积核。共享权重可以理解为提取图像信息的方式与位置无关。卷积核可以以随机大小的矩阵的形式初始化,在卷积神经网络的训练过程中卷积核可以通过学习得到合理的权重。另外,共享权重带来的直接好处是减少卷积神经网络各层之间的连接,同时又降低了过拟合的风险。
(4)损失函数
在训练深度神经网络的过程中,因为希望深度神经网络的输出尽可能的接近真正想要预测的值,所以可以通过比较当前网络的预测值和真正想要的目标值,再根据两者之间的差异情况来更新每一层神经网络的权重向量(当然,在第一次更新之前通常会有初始化的过程,即为深度神经网络中的各层预先配置参数),比如,如果网络的预测值高了,就调整权重向量让它预测低一些,不断地调整,直到深度神经网络能够预测出真正想要的目标值或与真正想要的目标值非常接近的值。因此,就需要预先定义“如何比较预测值和目标值之间的差异”,这便是损失函数(loss function)或目标函数(objective function),它们是用于衡量预测值和目标值的差异的重要方程。其中,以损失函数举例,损失函数的输出值(loss)越高表示差异越大,那么深度神经网络的训练就变成了尽可能缩小这个loss的过程。
(5)反向传播算法
神经网络可以采用误差反向传播(back propagation,BP)算法在训练过程中修正初始的神经网络模型中参数的大小,使得神经网络模型的重建误差损失越来越小。具体地,前向传递输入信号直至输出会产生误差损失,通过反向传播误差损失信息来更新初始的神经网络模型中参数,从而使误差损失收敛。反向传播算法是以误差损失为主导的反向传播运动,旨在得到最优的神经网络模型的参数,例如权重矩阵。
(6)神经网络结构搜索
神经网络结构搜索(Neural Architecture Search,NAS)是一种自动设计神经网络的技术,可以通过算法根据样本集自动设计出高性能的网络结构。
其中,搜索空间,搜索策略以及性能评估策略是NAS算法的核心要素。
搜索空间可以是指搜索的神经网络结构的集合,即解的空间。为了提高搜索效率,有时候会对搜索空间进行限定或简化。在某些NAS实现中会把网络切分成基本单元(cell,或block),通过这些单元的堆叠形成更复杂的网络。基本单元由多个节点(神经网络的层)组成,它们在整个网络中重复出现多次,但具有不同的权重参数。
搜索策略可以是指在搜索空间中寻找最优网络结构的过程。搜索策略定义了如何找到最优的网络结构,通常是一个迭代优化过程,本质上是超参数优化问题。
性能评估策略可以是指评估搜索出的网络结构的性能。搜索策略的目标是找到一个神经网络结构,通过性能评估策略可以评估搜索到的网络结构的性能。
图6示出了本申请实施例提供的一种***架构300。在图6中,数据采集设备360用于采集训练数据。针对本申请实施例的图像处理方法来说,当通过本申请实施例的神经网络的搜索方法确定目标图像超分辨率网络后,可以通过训练图像对目标超分辨率网络进行进一步训练,即数据采集设备360采集的训练数据可以是训练图像,训练图像可以包括样本图像以及样本图像对应的超分辨率图像,其中,样本图像可以是指低分辨率图像,例如,低分辨率图像可以是指图像画质不清晰、画面模糊的图像。
在采集到训练数据之后,数据采集设备360将这些训练数据存入数据库330,训练设备320基于数据库330中维护的训练数据训练得到目标模型/规则301。
下面对训练设备320基于训练数据得到目标模型/规则301进行描述,训练设备320对输入的原始图像进行处理,将输出的图像与原始图像进行对比,直到训练设备320输出的图像与原始图像的差值小于一定的阈值,从而完成目标模型/规则301的训练。
例如,在本申请提供的图像处理方法中用于进行图像超分辨率处理的目标图像超分辨率网络可以是通过样本图像的预测超分辨率图像与样本超分辨率图像之间的损失进行训练得到的,训练后的网络使得将样本图像输入至目标图像超分辨率网络得到的预测超分辨率图像与样本超分辨率图像的差值小于一定的阈值,从而完成目标图像超分辨率网络的训练。
上述目标模型/规则301能够用于实现本申请实施例的图像处理方法。本申请实施例中的目标模型/规则301具体可以为神经网络。
需要说明的是,在实际的应用中,所述数据库330中维护的训练数据不一定都来自于数据采集设备360的采集,也有可能是从其他设备接收得到的。另外需要说明的是,训练设备320也不一定完全基于数据库330维护的训练数据进行目标模型/规则301的训练,也有可能从云端或其他地方获取训练数据进行模型训练,上述描述不应该作为对本申请实施例的限定。
根据训练设备320训练得到的目标模型/规则301可以应用于不同的***或设备中,如应用于图6所示的执行设备310,所述执行设备310可以是终端,如手机终端,平板电脑,笔记本电脑,增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR),车载终端等,还可以是服务器,或者,云端等。在图6中,执行设备310配置输入/输出(input/output,I/O)接口312,用于与外部设备进行数据交互,用户可以通过客户设备340向I/O接口312输入数据,所述输入数据在本申请实施例中可以包括:客户设备输入的待处理图像。
预处理模块313和预处理模块314用于根据I/O接口312接收到的输入数据(如待处理图像)进行预处理,在本申请实施例中,也可以没有预处理模块313和预处理模块314(也可以只有其中的一个预处理模块),而直接采用计算模块311对输入数据进行处理。
在执行设备310对输入数据进行预处理,或者在执行设备310的计算模块311执行计算等相关的处理过程中,执行设备310可以调用数据存储***350中的数据、代码等以用于相应的处理,也可以将相应处理得到的数据、指令等存入数据存储***350中。
最后,I/O接口312将处理结果,如上述得到的预测深度处理后的深度图像返回给客户设备340,从而提供给用户。
值得说明的是,训练设备320可以针对不同的目标或称不同的任务,基于不同的训练数据生成相应的目标模型/规则301,该相应的目标模型/规则301即可以用于实现上述目标或完成上述任务,从而为用户提供所需的结果。
在图6中所示情况下,用户可以手动给定输入数据,该手动给定可以通过I/O接口312提供的界面进行操作。另一种情况下,客户设备340可以自动地向I/O接口312发送输入数据,如果要求客户设备340自动发送输入数据需要获得用户的授权,则用户可以在客户设备340中设置相应权限。用户可以在客户设备340查看执行设备310输出的结果,具体的呈现形式可以是显示、声音、动作等具体方式。客户设备340也可以作为数据采集端,采集如图所示输入I/O接口312的输入数据及输出I/O接口312的输出结果作为新的样本数据,并存入数据库330。当然,也可以不经过客户设备340进行采集,而是由I/O接口312直接将如图所示输入I/O接口312的输入数据及输出I/O接口312的输出结果,作为新的样本数据存入数据库330。
值得注意的是,图6仅是本申请实施例提供的一种***架构的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制,例如,在图6中,数据存储***350相对执行设备310是外部存储器,在其它情况下,也可以将数据存储***350置于执行设备310中。
如图6所示,根据训练设备320训练得到目标模型/规则301,该目标模型/规则301在本申请实施例中可以是本申请中的神经网络,具体的,本申请实施例提供的神经网络可以是CNN,深度卷积神经网络(deep convolutional neural networks,DCNN)等。
由于CNN是一种非常常见的神经网络,下面结合图7重点对CNN的结构进行详细的介绍。如上文的基础概念介绍所述,卷积神经网络是一种带有卷积结构的深度神经网络,是一种深度学习(deep learning)架构,深度学习架构是指通过机器学习的算法,在不同的抽象层级上进行多个层次的学习。作为一种深度学习架构,CNN是一种前馈(feed-forward)人工神经网络,该前馈人工神经网络中的各个神经元可以对输入其中的图像作出响应。
本申请实施例的图像处理方法具体采用的神经网络的结构可以如图7所示。在图7中,卷积神经网络(CNN)400可以包括输入层410,卷积层/池化层420(其中,池化层为可选的),以及神经网络430。其中,输入层410可以获取待处理图像,并将获取到的待处理图像交由卷积层/池化层420以及后面的神经网络层430进行处理,可以得到图像的处理结果。下面对图7中的CNN 400中内部的层结构进行详细的介绍。
卷积层/池化层420:
如图7所示卷积层/池化层420可以包括如示例421-426层,举例来说:在一种实现中,421层为卷积层,422层为池化层,423层为卷积层,424层为池化层,425为卷积层,426为池化层;在另一种实现方式中,421、422为卷积层,423为池化层,424、425为卷积层,426为池化层。即卷积层的输出可以作为随后的池化层的输入,也可以作为另一个卷积层的输入以继续进行卷积操作。
下面将以卷积层421为例,介绍一层卷积层的内部工作原理。
卷积层421可以包括很多个卷积算子,卷积算子也称为核,其在图像处理中的作用相当于一个从输入图像矩阵中提取特定信息的过滤器,卷积算子本质上可以是一个权重矩阵,这个权重矩阵通常被预先定义,在对图像进行卷积操作的过程中,权重矩阵通常在输入图像上沿着水平方向一个像素接着一个像素(或两个像素接着两个像素等,这取决于步长stride的取值)的进行处理,从而完成从图像中提取特定特征的工作。该权重矩阵的大小应该与图像的大小相关,需要注意的是,权重矩阵的纵深维度(depth dimension)和输入图像的纵深维度是相同的,在进行卷积运算的过程中,权重矩阵会延伸到输入图像的整个深度。因此,和一个单一的权重矩阵进行卷积会产生一个单一纵深维度的卷积化输出,但是大多数情况下不使用单一权重矩阵,而是应用多个尺寸(行×列)相同的权重矩阵,即多个同型矩阵。每个权重矩阵的输出被堆叠起来形成卷积图像的纵深维度,这里的维度可以理解为由上面所述的“多个”来决定。
不同的权重矩阵可以用来提取图像中不同的特征,例如,一个权重矩阵用来提取图像边缘信息,另一个权重矩阵用来提取图像的特定颜色,又一个权重矩阵用来对图像中不需要的噪点进行模糊化等。该多个权重矩阵尺寸(行×列)相同,经过该多个尺寸相同的权重矩阵提取后的卷积特征图的尺寸也相同,再将提取到的多个尺寸相同的卷积特征图合并形成卷积运算的输出。
这些权重矩阵中的权重值在实际应用中需要经过大量的训练得到,通过训练得到的权重值形成的各个权重矩阵可以用来从输入图像中提取信息,从而使得卷积神经网络400进行正确的预测。
当卷积神经网络400有多个卷积层的时候,初始的卷积层(例如421)往往提取较多的一般特征,该一般特征也可以称之为低级别的特征;随着卷积神经网络400深度的加深,越往后的卷积层(例如426)提取到的特征越来越复杂,比如,高级别的语义之类的特征,语义越高的特征越适用于待解决的问题。
池化层:
由于常常需要减少训练参数的数量,因此卷积层之后常常需要周期性的引入池化层,在如图7中420所示例的421-426各层,可以是一层卷积层后面跟一层池化层,也可以是多层卷积层后面接一层或多层池化层。在图像处理过程中,池化层的唯一目的就是减少图像的空间大小。池化层可以包括平均池化算子和/或最大池化算子,以用于对输入图像进行采样得到较小尺寸的图像。平均池化算子可以在特定范围内对图像中的像素值进行计算产生平均值作为平均池化的结果。最大池化算子可以在特定范围内取该范围内值最大的像素作为最大池化的结果。另外,就像卷积层中用权重矩阵的大小应该与图像尺寸相关一样,池化层中的运算符也应该与图像的大小相关。通过池化层处理后输出的图像尺寸可以小于输入池化层的图像的尺寸,池化层输出的图像中每个像素点表示输入池化层的图像的对应子区域的平均值或最大值。
神经网络层430:
在经过卷积层/池化层420的处理后,卷积神经网络400还不足以输出所需要的输出信息。因为如前所述,卷积层/池化层420只会提取特征,并减少输入图像带来的参数。然而为了生成最终的输出信息(所需要的类信息或其他相关信息),卷积神经网络400需要利用神经网络层430来生成一个或者一组所需要的类的数量的输出。因此,在神经网络层430中可以包括多层隐含层(如图7所示的431、432至43n)以及输出层440,该多层隐含层中所包含的参数可以根据具体的任务类型的相关训练数据进行预先训练得到,例如该任务类型可以包括图像识别,图像分类,图像检测以及图像超分辨率重建等等。
在神经网络层430中的多层隐含层之后,也就是整个卷积神经网络400的最后层为输出层440,该输出层440具有类似分类交叉熵的损失函数,具体用于计算预测误差,一旦整个卷积神经网络400的前向传播(如图7由410至440方向的传播为前向传播)完成,反向传播(如图7由440至410方向的传播为反向传播)就会开始更新前面提到的各层的权重值以及偏差,以减少卷积神经网络400的损失,及卷积神经网络400通过输出层输出的结果和理想结果之间的误差。
本申请实施例的图像处理方法具体采用的神经网络的结构可以如图8所示。在图8中,卷积神经网络(CNN)500可以包括输入层510,卷积层/池化层520(其中,池化层为可选的),以及神经网络530。与图7相比,图8中的卷积层/池化层520中的多个卷积层/池化层并行,将分别提取的特征均输入给全神经网络层530进行处理。
需要说明的是,图7和图8所示的卷积神经网络仅作为一种本申请实施例的图像处理方法的两种可能的卷积神经网络的示例,在具体的应用中,本申请实施例的图像处理方法所采用的卷积神经网络还可以以其他网络模型的形式存在。
图9为本申请实施例提供的一种芯片的硬件结构,该芯片包括神经网络处理器600。该芯片可以被设置在如图6所示的执行设备310中,用以完成计算模块311的计算工作。该芯片也可以被设置在如图6所示的训练设备320中,用以完成训练设备320的训练工作并输出目标模型/规则301。如图7或图8所示的卷积神经网络中各层的算法均可在如图9所示的芯片中得以实现。
神经网络处理器NPU 600作为协处理器挂载到主中央处理器(centralprocessing unit,CPU)(host CPU)上,由主CPU分配任务。NPU 600的核心部分为运算电路603,控制器604控制运算电路603提取存储器(权重存储器或输入存储器)中的数据并进行运算。
在一些实现中,运算电路603内部包括多个处理单元(process engine,PE)。在一些实现中,运算电路603是二维脉动阵列。运算电路603还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路603是通用的矩阵处理器。
举例来说,假设有输入矩阵A,权重矩阵B,输出矩阵C。运算电路603从权重存储器602中取矩阵B相应的数据,并缓存在运算电路603中每一个PE上。运算电路603从输入存储器601中取矩阵A数据与矩阵B进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累加器608(accumulator)中。
向量计算单元607可以对运算电路603的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。例如,向量计算单元607可以用于神经网络中非卷积/非FC层的网络计算,如池化(pooling),批归一化(batch normalization),局部响应归一化(local response normalization)等。
在一些实现种,向量计算单元能607将经处理的输出的向量存储到统一存储器606。例如,向量计算单元607可以将非线性函数应用到运算电路603的输出,例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元607生成归一化的值、合并值,或二者均有。在一些实现中,处理过的输出的向量能够用作到运算电路603的激活输入,例如用于在神经网络中的后续层中的使用。
统一存储器606用于存放输入数据以及输出数据。
权重数据直接通过存储单元访问控制器605(direct memory accesscontroller,DMAC)将外部存储器中的输入数据搬运到输入存储器601和/或统一存储器606、将外部存储器中的权重数据存入权重存储器602,以及将统一存储器606中的数据存入外部存储器。
总线接口单元(bus interface unit,BIU)610,用于通过总线实现主CPU、DMAC和取指存储器609之间进行交互。
与控制器604连接的取指存储器(instruction fetch buffer)609,用于存储控制器604使用的指令。
控制器604,用于调用取指存储器609中缓存的指令,实现控制该运算加速器的工作过程。
一般地,统一存储器606,输入存储器601,权重存储器602以及取指存储器609均为片上(On-Chip)存储器,外部存储器为该NPU外部的存储器,该外部存储器可以为双倍数据率同步动态随机存储器(double data rate synchronous dynamic random accessmemory,DDR SDRAM)、高带宽存储器(high bandwidth memory,HBM)或其他可读可写的存储器。
其中,图7或图8所示的卷积神经网络中各层的运算可以由运算电路603或向量计算单元607执行。
上文中介绍的图6中的执行设备310能够执行本申请实施例的图像处理方法或者图像处理方法的各个步骤,图7和图8所示的CNN模型和图9所示的芯片也可以用于执行本申请实施例的图像处理方法或者图像处理方法的各个步骤。
下面先结合附图10至图24对本申请实施例的神经网络的搜索方法进行详细的介绍,需要说明的是,通过本申请实施例的神经网络的搜索方法确定的目标超分辨率网络可以用于执行本申请实施例的图像处理方法。
如图10所示,本申请实施例提供了一种***架构700。该***架构包括本地设备720、本地设备730以及执行设备710和数据存储***750,其中,本地设备720和本地设备730通过通信网络与执行设备710连接。
执行设备710可以由一个或多个服务器实现。可选的,执行设备710可以与其它计算设备配合使用,例如:数据存储器、路由器、负载均衡器等设备。执行设备710可以布置在一个物理站点上,或者分布在多个物理站点上。执行设备710可以使用数据存储***750中的数据,或者调用数据存储***750中的程序代码来实现本申请实施例的搜索神经网络结构的方法。
需要说明的是,上述执行设备710也可以称为云端设备,此时执行设备710可以部署在云端。
具体地,执行设备710可以执行以下过程:构建基本单元,所述基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,所述基本模块包括第一模块,所述第一模块用于对第一输入特征图进行降维操作和残差连接操作,所述降维操作用于将所述第一输入特征图的尺度从原始的第一尺度变换至第二尺度,所述第二尺度小于所述第一尺度,所述残差连接操作用于将所述第一输入特征图与经过所述第一模块处理后的特征图进行特征相加处理,所述第一模块处理后的特征图的尺度和所述第一输入特征图的尺度相同;根据所述基本单元和网络结构参数构建搜索空间,其中,所述网络结构参数包括构建所述基本单元使用的基本模块的类型,所述搜索空间用于搜索图像超分辨率网络结构,所述基本单元是用于构建图像超分辨率网络的基础模块;在所述搜索空间中进行图像超分辨率网络结构搜索确定目标图像超分辨率网络,所述目标图像超分辨率网络用于对待处理图像进行超分辨率处理,所述目标图像超分辨率网络中至少包括所述第一模块,所述目标图像超分辨率网络为计算量小于第一预设阈值且图像超分辨率精度大于第二预设阈值的网络。
通过上述过程执行设备710能够通过网络结构搜索(neural architecturesearch,NAS)的方式获取一个目标神经网络,该目标神经网络可以用于图像超辨率处理等。
在一种可能的实现方式中,上述执行设备710搜索网络结构的方法可以是在云端执行的离线搜索方法。
用户可以操作各自的用户设备(例如,本地设备720和本地设备730)与执行设备710进行交互。每个本地设备可以表示任何计算设备,例如,个人计算机、计算机工作站、智能手机、平板电脑、智能摄像头、智能汽车或其他类型蜂窝电话、媒体消费设备、可穿戴设备、机顶盒、游戏机等。
每个用户的本地设备可以通过任何通信机制/通信标准的通信网络与执行设备710进行交互,通信网络可以是广域网、局域网、点对点连接等方式,或它们的任意组合。
在一种实现方式中,本地设备720、本地设备730可以从执行设备710获取到目标神经网络的相关参数,将目标神经网络部署在本地设备720、本地设备730上,利用该目标神经网络进行图像超辨率处理处理等等。
在另一种实现中,执行设备710上可以直接部署目标神经网络,执行设备710通过从本地设备720和本地设备730获取待处理图像,并根据目标神经网络对待处理图像进行图像超辨率处理。
例如,上述目标神经网络可以是本申请实施例中的目标图像超分辨率网络。
下面先结合图11对本申请实施例的神经网络的搜索方法进行详细的介绍。图11所示的方法可以由神经网络搜索装置来执行,该神经网络搜索装置可以是电脑、服务器等运算能力足以用来神经网络搜索的装置。
图11所示的方法800包括步骤810至830,下面分别对这些步骤进行详细的描述。
步骤810:构建基本单元,基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,基本模块包括第一模块,第一模块用于对第一输入特征图进行降维操作和残差连接操作,降维操作用于将所述第一输入特征图的尺度从原始的第一尺度变换至第二尺度,第二尺度小于第一尺度,残差连接操作用于将第一输入特征图与经过第一模块处理后的特征图进行特征相加处理,所述第一模块处理后的特征图的尺度和所述第一输入特征图的尺度相同。
需要说明的是,基本单元可以是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,上述网络结构可以包含预先设定好的卷积神经网络中的基础运算或者基础运算的组合,这些基础运算或者基础运算的组合可以统称为基本操作。
例如,基本操作可以是指卷积操作,池化操作,残差连接等,通过基本操作可以使得各个基本模块之间进行连接,从而得到基本单元的网络结构。
在一种可能的实现方式中,上述基本单元可以是用于构建图像超分辨率网络的基础模块,如图12所示目标图像超分辨率网络可以包括三大部分分别为特征提取部分、非线性变化部分以及重建部分,其中,特征提取模块用于获取待处理图像的图像特征,在图12中待处理图像可以是低分辨率图像(low resolution,LR);非线性变换部分用于将待输入图像的图像特征进行变换,将图像特征从第一特征空间映射至第二特征空间,第一特征空间是指提取待处理图像所在的特征空间,通常情况下第二高维空间更易于重构超分图像;重构部分用于将非线性变化部分输出的图像特征进行上采样和卷积处理,得到待输入图像对应的超分辨率图像。在本申请的实施例中,可以通过NAS的方式在搜索空间中搜索非线性变换部分网络结构。
在一种可能的实现方式中,输入第一模块的第一输入特征图为第一尺度,经过降维操作后变换至第二尺度,将第二尺度的第一输入特征图在进行升维操作变换至第三尺度,第三尺度位于第一尺度和第二尺度之间,此时为了实现残差连接操作即在相同尺度上进行特征图的连接,则可以再次对第一尺度的第一输入特征图进行降维操作降维至与第三尺度的第一输入特征图的尺度相同,即经过第一模块处理后的特征图的尺度和第一输入特征图的尺度相同。
上述基本单元cell可以是通过将基本模块根据神经网络的基本操作进行连接得的网络。其中,基本模块中可以包括第一模块,第一模块可以是尺度模块(contextualresidual dense block,CRDB),尺度模块可以用于对第一输入特征图进行降维操作和残差连接操作,即尺度模块中可以包括用于对第一输入特征图进行处理的池化子模块和残差连接。
示例性地,通过降维操作可以使得第一输入特征图的尺度减少,其中,降维操作可以是指对第一输入特征图进行池化操作,或者,降维操作也可以是指对第一输入特征图进行步长为Q的卷积操作,Q为大于1的正整数。
示例性地,上述残差连接操作用于将第一输入特征图与经过第一模块处理后的特征图进行特征相加处理,其中,第一模块处理后的特征图可以是指经过升维操作后的特征图,升维操作是指将经过降维处理后的特征图的尺度恢复至原始的第一尺度,残差连接操作可以是指将第一输入特征图与经过升维操作处理后的特征图进行特征相加处理。
例如,上述升维操作可以是指上采样操作,或者,升维操作也可以是指反向卷积操作(backwards strided convolution),其中,上采样操作可以是指采用内插值方法,即在原有图像像素的基础上在像素点之间采用合适的插值算法***新的元素;反卷积操作可以是指卷积操作的逆过程,又称作转置卷积。
应理解,特征相加可以是指对于同一尺度的特征图,将不同通道特征的信息进行相加。
在本申请的实施例中,尺度模块可以对输入特征图进行残差连接,即可以将第一输入特征图与经过第一模块处理后的特征图进行特征相加处理,从而实现能够将第一输入特征图中更多的局部细节信息传递至后面的卷积层。在尺度模块中确保有足够的第一输入特征图的局部细节信息传递至后面的卷积层时,尺度模块可以用于对第一输入特征图进行降维操作。在一方面,通过降维操作可以降低输入特征图的尺度从而降低模型计算量,同时,残差连接操作可以将前层的信息可以很好地传递到后面的层,这弥补了降维操作信息丢失的缺陷。在另一方面,降维操作还可以快速扩大特征的感受野,让高分辨率像素点的预测更好的考虑上下文的信息,从而提升超分精度。
应理解,图像超分辨率重构技术是指通过将低分辨率图像进行重构得到高分辨率图像。因此,在图像超分辨处理中需要更多图像特征的局部信息,目前常用的图像超分辨率网络模型均未使用降维操作,主要是由于降维操作会损失部分低分辨率输入图像的局部信息。在本申请的实施例中,通过残差连接操作和/或密集连接操作使得输入特征图中的信息在整个网络中的保持地更好,即可以将前层的信息可以很好地传递到后面的层,从而能够弥补了降维操作造成的信息丢失的缺陷。通过使用降维操作不仅可以降低模型计算量,而且还能够扩大特征的感受野,提升图像超分率辨网络的精度。
在一种可能的实现方式中,尺度模块的网络结构的具体形式可以如图13所示。在图13中示出了三个尺度模块,分别是第d-1个尺度模块、第d个尺度模块以及第d+1个尺度模块。其中,第d个尺度模块中可以包括池化子模块,降维操作可以用于对输入的特征图进行降采样,从而降低特征尺寸大小。
例如,上述降维操作可以是指池化操作,比如可以是平均池化,或者,也可以是最大池化。
在图13所示的尺度模块网络结构的示意图中,残差连接可以是指CRDB d-1模块的输出特征图与处理后的特征图进行特征相加,处理后的特征图是指对输入特征图分别进行池化操作、3×3卷积操作、线性整流函数(rectified linear unit,ReLU)、升维操作处理以及1×1卷积操作后得到的特征图。
进一步地,为了提升目标图像超分辨率网络的性能。尺度模块中还可以用于对第一输入特征图进行密集连接操作,密集连接操作可以是指将i-1个卷积层中各个卷积层的输出特征图以及所述输入特征图进行特征拼接作为第i个卷积层的输入特征图。
示例性地,尺度模块的网络结构的具体形式可以如图14所示。密集连接操作可以实现网络中最大的信息流通,通过每层都与该层之前的所有层都相连,即每层的输入是前面所有层的输出的拼接。通过密集连接操作使得输入特征图中的信息(前向计算时)或梯度(后向计算时)在整个网络中的保持地更好,从而能够更好弥补了降维操作信息丢失的缺陷。即在进行图像超分辨率处理时,通过残差连接操作和密集连接操作可以确保特征图中的信息可以更好的传递至网络结构中的后层,此时通过采用降维操作对输入特征图进行降采样降低特征尺寸大小,从而能够在确保图像超分辨率处理的精度的情况下降低模型计算量。
应理解,特征拼接可以是指将同一尺度的M个特征图拼接成一个具有K通道的特征图,其中,K为大于M的正整数。
例如,如图14所示,密集连接操作是指将每一层的输出特征图传递至后面的各个层,后面层的输入是通过前面各个层的输出进行特征图拼接得到的。
对于神经网络结构而言网络结构的深度越深,即网络结构中卷积层的数量越多,得到的处理图像的精度越高。
在一种可能的实现方式中,尺度模块的网络结构的具体形式可以如图15所示。尺度模块可以用于对输入特征图进行残差连接操作、降维操作、卷积操作以及循环的密集连接操作,即尺度模块中可以包括残差连接、池化子模块、卷积子模块以及循环的密集连接。通过循环的密集连接操作可以增加尺度模块网络结构的深度,从而提升超分辨率处理的精度。
需要说明的是,循环(Recursive)操作在正常尺度的特征图上运算会快速增加计算量,但是在降维操作处理后的特征图进行循环操作增加计算量较小。一定数目的操作和降维操作的结合可以在不增加计算量和参数量的情况下提升超分精度。
本申请实施例提出的第一模块即尺度模块,可以实现降低计算量、减少参数、扩大感受野以及解耦参数量和计算量。首先,尺度模块中的降维操作可以通过降低特征图的尺度从而降低网络结构的计算量。
例如,以降维操作为2x2池化为例进行说明,假设输入特征图的大小为Cin×W×H,卷积核大小为K×K,输出特征的通道数目为Cout,则正常卷积的计算量为:
FLOPsori=2(CinK2+1)Cout·HW;
其中,可以通过每秒浮点运算次数(floating point operations,FLOPs)表示网络模型的计算量。FLOPsori表示网络模型通过正常卷积的计算量。
加入池化操作后卷积的计算量(FLOPspool)为:
通过上面正常卷积的计算量和池化操作后卷积的计算量比较可以看作,池化操作可以减少75%的计算量,即使增加三次循环操作也仅仅恢复到原先的计算量。
可选地,在本申请的实施例中第一模块还用于进行重排操作,重排操作是指将第一输入特征图的多个第一通道特征按照预设规则进行合并处理生成一个第二通道特征,其中,第二通道特征的分辨率高于第一通道特征的分辨率。
例如,可以是如图16所示重排操作可以是指将4张不同的第一特征通道按照从左至右以及从上到下的规则进行合并处理,将4正通道特征图合并成一张第二通道特征图,第二通道特征图的分辨率高于第一通道特征图。
需要说明的是,上述是以多张特征图为4张特征图,预设规则为从左到右以及从上到下为例进行举例说明,并不对本申请作出任何限定。图13至图15中所示的升维子模块均可以用于进行重排操作。
通过图13至图15中所示的升维子模块,即通过在1x1卷积之前进行重排操作,可以减少一定量的参数。重排操作可以看作是将多个低尺度特征通道转化为一个高尺度特征通道,从而减少了通道数目。
例如,以降维操作2x2池化为例,假设卷积层数目为Nconv,每个卷积层输出通道数目为G,1x1卷积层的输出通道数目为Cout,则正常卷积的参数量paramori为:
Paramori=Nconv·G·Cout
尺度模块的参数量为paramup
通过上述正常卷积的参数量与尺度模块的参数比较可以看出,通过采用重排操作的上采样可以使得尺度模块在1x1卷积层后减少75%的参数量。
在本申请的实施中,构建基本单元的基本模块中包括尺度模块,一方面尺度模块可以通过降维操作可以扩大感受野,促使高分辨率像素点的预测更好的考虑上下文的信息;另一方面,由于常见超分方法都不使用降维操作,整个非线性变化部分输入特征图的尺度都不会发生变化,从而导致参数量和计算量使线性关系。本申请实施例提出的尺度模块使用降维操作让参数量和计算量相对独立,给予NAS中搜索算法更多的可能性。
在本申请的实施例中,构建基本单元的基本模块中除了上述第一模块即尺度模块外还包括第二模块和/或第三模块。下面结合图17至图19详细说明基本模块中还包括的第二模块和第三模块。
在一种可能的实现方式中,基本模块中还可以包括第二模块,第二模块可以是紧致模块(shrink residual dense block,SRDB)。紧致模块可以是指在残差密集模块(residual dense block,RDB)的基础上进行通道压缩处理,从而实现的保留密集连接并有效减少模型参数量。
具体地,紧致模块用于对第二输入特征图进行通道压缩操作、残差连接操作以及密集连接操作,通道压缩操作可以是指对第二输入特征图进行卷积核为1×1的卷积操作。
应理解,当第二模块是基本单元中的第一个模块时,第二输入特征图可以是指该基本单元的上一个基本单元输出的特征图;当第二模块不是基本单元中的第一个模块时,第二输入特征图可以是指经过该模块的前一个模块处理后输出的特征图。在本申请的实施例中第一输入特征图、第二输入特征图以及第三输入特征图均对应于同一个待处理图像。
例如,紧致模块的网络结构可以如图17所示,在图17中示出了三个紧致模块,分别是第d-1个紧致模块、第d个紧致模块以及第d+1个紧致模块。其中,可以先采用采用1x1卷积核对特征图进行通道数目压缩,然后进行3x3卷积的特征变换,从而构成紧致的残差密集模块可以简称为紧致模块,能够实现在保留密集链接的条件下大幅减少参数数量。
在一种可能的实现方式中,基本模块中还可以包括第三模块,第三模块可以是指分组模块(group residual dense block,GRDB)。分组模块可以是指在残差密集模块的基础上将卷积操作划分成多个组分别计算,从而有利于减少模型参数。
具体地,分组模块可以是用于对第三输入特征图进行通道交换操作、残差连接操作以及密集连接操作的模块,第三输入特征图中包括M个子特征图,M个子特征图中每个子特征图包括至少两个相邻的通道特征,通道交换处理可以是指将M个子特征图对应的至少两个相邻的通道特征进行重新排序,使得所述M个子特征图中不同子特征图对应的通道特征相邻,M为大于1的整数。
例如,分组模块的网络结构可以如图18所示,在图18中示出了三个分组模块,分别是第d-1个分组模块、第d个分组模块以及第d+1个分组模块。其中,由于卷积层的输入是由前面几层特征图直接进行拼接而成,若直接采用组卷积会导致输出层单个通道特征只能接受前面一个卷积层的特征,从而不利于通道特征间相互协作。因此,在本申请实施例中在残差密集模块的基础上加入了通道交换(Channel Shuffle)操作,从而构成分组的残差密集模块可以简称分组模块,从而有效减少网络的参数量。
示例性地,如图19所示,假设第三输入特征图包括三个子特征图1、2、3,每个子特征图中包括3个相邻的通道特征,通道交换即可以是使得同一子特征图中原本相邻的通道特征进行重新排序,从而得到不同子特征图对应的通道特征相邻。
在本申请的实施例中,基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,如图12中所示的一个cell即可以是一个基本单元,基本单元是用于构建图像超分辨率网络的基础模块。基本模块用于构建基本单元,如图20所示,每个基本单元cell可以由不同的基本模块通过神经网络的基本操作连接得到,基本模块可以包括上述的第一模块、第二模块以及第三模块中的一个或者多个。
步骤820、根据基本单元和网络结构参数构建搜索空间,其中,网络结构参数包括构建基本单元使用的基本模块的类型,搜索空间是用于搜索图像超分辨率网络结构的搜索空间。
其中,基本单元的具体形式可以是上述步骤810中的任一种可能的实现方式。
示例性地,在本申请的实施例中,网络参数可以包括:
(1)基本单元的数目;
(2)每个基本单元(cell)选择的模块类型;
例如,基本模块的类型可以包括第一模块、第二模块以及第三模块三种不同的类型,比如,C表示第一模块即尺度模块,S表示第二模块即紧致模块,G表示第三模块即分组模块。
(3)基本单元中一个模块内卷积层的数目;
例如,卷积层的数目可以是{4,6,8}。
(4)基本单元中一个模块内每个卷积层输出的通道数目;
例如,通道数目可以是{16,24,32,48}。
(5)整个基本单元输出的通道数目;
例如,一个基本单元的输出通道数目可以是{16,24,32,48}。
(6)基本单元的状态:1表示当下节点接入网络,0表示当下节点不接入网络。
在本申请的实施例中,通过基本模块构建基本单元得到的搜索空间可以在给定的基本模块的类型中选择候选网络结构,相当于将连续的搜索空间离散化了,可以有效的减少搜索空间的大小。
步骤830:在搜索空间中进行图像超分辨率网络结构搜索确定目标图像超分辨率网络,目标图像超分辨率网络用于对待处理图像进行超分辨率处理,目标图像超分辨率网络中至少包括第一模块,目标图像超分辨率网络为计算量小于第一预设阈值且图像超分辨率精度大于第二预设阈值的网络。
应理解,上述在搜索空间中进行图像超分辨率网络结构搜索确定目标图像超分辨率网络可以是指通过算法搜索在搜索空间中进行搜索确定满足约束条件的网络结构,或者,也可以是指通过人工搜索在搜索空间中选取满足约束条件的网络结构。
在一种可能的实现方式中,约束条件可以是指计算量小于第一预设阈值且图像超分辨率精度大于第二预设阈值,使得在移动设备的计算性能受限制的情况下,进行图像超分辨率处理的目标图像超分辨率网络的精度较高。
在一种可能的实现方式中,约束条件可以是指计算量小于第一预设阈值、图像超分辨率精度大于第二预设阈值以及参数量小于第三预设阈值。
示例性地,常见的搜索算法可以包括但不限于以下算法:随机搜索、贝叶斯优化、进化算法、强化学习、基于梯度的算法等。在搜索空间中进行图像超分辨率网络结构搜索的方法的具体流程可以参考现有技术,为了简洁,本申请中省略对所有搜索方法的详细说明。
在一个实施例中,在本申请中可以通过进化算法通过以网络模型的参数量、计算量和模型效果(PSNR)为目标搜索轻量化、快速且精度高的超分网络结构。
例如,在所述搜索空间中进行网络搜索确定目标图像超分辨率网络的过程包括以下步骤:在搜索空间中通过进化算法进行网络搜索确定第一图像超分辨率网络;通过多级加权联合损失函数对第一图像超分辨率网络进行反向传播迭代训练确定目标图像超分辨率网络,其中,所述多级加权联合损失函数是根据第一图像超分辨率网络中的每个所述基本单元输出的特征图对应的预测超分辨率图像与样本超分辨率图像之间的损失确定的。
换而言之,在本申请的实施例中可以通过对进化算法确定的第一图像超分辨率网络通过多级加权联合损失函数进行二次训练,最终确定目标图像超分辨率网络的参数得到目标图像超分辨率网络。
具体地,通过进化算法在搜索空间中搜索目标图像超分辨率网络包括以下步骤:根据基本单元随机生成P个候选网络结构;采用多级加权联合损失函数训练所述P个候选网络结构;评估训练后的P个候选网络结构中每个候选网络结构的性能参数,性能参数包括峰值性噪比,峰值信噪比用于指示通过所述每个候选网络结构得到的预测超分图像与样本超分图像之间的差异;根据候选网络的性能参数确定第一图像超分辨率网络。
例如,图22所示,进化算法执行流程可以包括以下步骤:
第一步:随机生成P个个体(即候选网络结构),该P个候选网络结构为初始化种群;
第二步:评价每一个网络结构的适应度(即性能参数),包括参数量、计算量和精度,精度可以通过峰值信噪比(peak signal-to-noise ratio,PSNR)进行度量;
第三步:选择并更新精英个体,精英个体可以是看作是性能参数满足预设条件的网络结构;
第四步:通过交叉和变异产生下一代个体;
第五步:重复步骤二至步骤四直到进化算法收敛,返回最后精英个体(即第一图像超分辨率网络)。其中,上述精英个体可以是指通过进行算法确定的目标网络结构。
在上述第二步中评估网络结构的性能参数时,可以使用本申请提出的多级加权联合损失函数训练待评估的网络结构,在通过多级加权联合损失函数训练后再评估还网络结构的峰值信噪比。
例如,多级加权联合损失函数是根据以下等式得到的,
其中,L可以表示多级加权联合损失函数,Lk可以表示第一图像超分辨率网络的第k层的损失值,损失值可以是指第k层的输出特征图对应的预测超分辨率图像与样本超分辨率图像之间的图像损失,λk,t可以表示在t时刻第k层的损失值的权重。
例如,如图21所示,由于基本单元中基本模块的数目不同,底层基本单元训练的程度可能有所差异。为了更加充分的学习底层基本单元的参数,提升搜索稳定性和模型的性能,本申请实施例提出了多级加权联合损失函数,即在训练时可以根据每一个基本单元的输出特征图得到预测超分分辨率图像,并计算预测超分分辨率图像与样本超分辨率图像之间的损失值,将各个基本单元的图像损失值进行加权处理后对网络进行训练。
需要说明的是,各个中间层图像损失的权重可以随着时间(或者,迭代次数)的变化而变化。该损失函数可以联合各个中间层的预测图像损失,并通过加权方式体现不同层的重要程度,其中,各个中间层图像损失的权重值可以随着时间变化而变化,这样有利于更加充分地训练底层基本单元的参数,从而提升超分辨率网络的性能。
表1
表1是通过在标准超分数据集上测试本申请提出的构建基本单元的基本模块的性能。表1所示为几种用本申请所提出的基本模块构造的图像超分辨率网络模型的实验结果,其中,每秒浮点运算次数(floating point operations,FLOPs)表示网络模型的计算量即每秒浮点运算次数,可以用于描述神经网络的计算量,评价模型的计算效率;参数量(parameters)可以用于描述神经网络包含的参数量,用于评价模型的大小;SET5,SET14,B100,Urban100表示不同的数据集的名称,通过数据集的训练可以评估网络模型的图像超分辨率精度,例如可以评估网络模型的峰值信噪比PSNR;Baseline表示小型的残差密集网络。从表1所示可以看出,本申请实施例提出的基本模块(例如,包括尺度模块GRDN、紧致模块SRDN、分组模块CRDN)以及目标图像超分辨率网络即高效的超分辨网络(efficientsuper-resolution network,ESRN)可以在参数量和计算量不变的情况下有效提升模型精度。
表2
表2是本申请实施例所提出的多级加权联合损失函数的测试结果。表2所示为深度卷积网络在应用多级加权联合损失函数后的实验结果,其中,Joint loss表示通过本申请实施例提出的多级加权损失函数训练的网络模型。从表2所示可以看出,通过本申请实施例中提供的多级加权联合损失函数训练图像超分辨率网络可以有效提升了图像超分辨率网络的精度。
表3
/>
表3是本申请实施例中提供的图像超分辨率网络在标准数据集上的结果统计。其中,类型1表示图像超分辨率模型运行时间为Fast;类型2图像超分辨率模型运行时间为Very Fast;模型中包括选择超分网络(deep networks with SUs,SelNet)、级联残差网络(cascading residual network,CARN),小型级联残差网络(mini cascading residualnetwork,CARN-M),轻量级快速超分辨率网络(fast accurate and light super-resolution network,FALSR),FALSR-A与FALSR-B表示不同的网络模型;ESRN表示本申请实施例中的目标图像超分辨率网络即高效的超分辨网络,例如,可以是快速高效超分辨率网络(fast efficient super-resolution network,ESRN-F),小型高效超分辨率网络(miniefficient super-resolution network,ESRN-M)。从表3可以看出,本申请实施例提供的目标图像超分辨率网络以及基本模块的计算量以及图像超分辨率精度优于其他网络模型。
表4
/>
表4是本申请实施例提供的目标图像超分辨率网络在不同超分辨率尺度上的测试结果。其中,倍数为×3表示在输出超分辨率图像为720p(1280×720)的基础进行3倍尺度的超分辨率测试;倍数为×4表示在输出超分辨率图像为720p(1280×720)的基础进行4倍尺度的超分辨率测试;模型中包括超分辨率卷积神经网络(super resolutionconvolutional neural network,SRCNN),深度超分网络(very deep convolutionalsuper resolution network,VDSR),SelNet,CARN,CARN-M,ESRN,ESRN-F,ESRN-M。
上述表1至表3中FLOPs的计算是以输出超分图像为720p(1280x720)为例进行x2尺度的图像超分辨率处理的测试结果,从表1至表3中的数据可以看出,本申请实施例提供的神经网络的搜索方法在不同参数量下都可以找到超分精度更好的模型。除此之外,由于本申请实施例提供的图像超分辨率网络中引入了降维操作,还可以通过约束模型的计算量FLOPs来搜索一个快速的中等参数量模型,在保证图像超分辨率效果高于FALSR-A模型的情况下,可以降低接近一半的计算量。同时,还分别在x3和x4尺度上进行了图像超分辨率测试,测试结果如表5所示,通过本申请实施的神经网络的搜索方法搜索到的轻量级网络(ESRN,ESRN-F,ESRN-M)在不同超分辨率尺度上的实验结果均超过了其他网络模型。
表5
模型 RDN CARN ESRN ESRN-F ESRN-M
GPU运行时间(ms) 181.5 45.6 52.5 36.2 30.9
表5是本申请实施例提供的目标图像超分辨率网络的运行时间的测试结果。从表5中可以看出,通过本申请实施例中的神经网络的搜索方法得到到的超分辨率网络不仅精度高,同时运行效率也较高。
图23和图24是通过本申请实施例的神经网络的搜索方法确定的目标图像超分辨率网络进行图像超分辨率处理的效果图。
其中,图23和图24展示了利用本申请所提出的基础模块构建的图像超分辨率网络进行图像充分辨率处理后的图像效果。以尺度x3进行超分辨率处理为例说明,图23示出了在Set14数据集中的图像进行超分辨率处理后的视觉效果图。图24示出了在Urban100数据集中的图像进行超分辨率处理后的视觉效果图。其中,包括高分辨率网络(highresolution,HR),金字塔超分网络(deep laplacian pyramid networks for super-resolution,LapSRN),双三次插值网络,CARN-M,CARN,VDSR,ESRN-M,ESRN。通过在Urban100和Set14数据集中通过使用本申请实施例提供的轻型高效的深度卷积网络(例如,ESRN、ESRN-M)可以得到了具有更高清晰度的图像。因此,本申请提出的神经网络的搜索方法得到的图像超分辨率网络不仅可以降低网络参数量和计算量,还可以有效提升图像超分的视觉效果,使得超分图像的边缘更加清晰。
图25是本申请实施例提供的图像处理方法的示意性流程图。图25所示的方法900包括步骤910和步骤920,下面对步骤910和步骤920进行详细的说明。
步骤910:获取待处理图像。
其中,待处理图像可以是电子设备通过摄像头拍摄到的图像,或者,该待处理图像还可以是从电子设备内部获得的图像(例如,电子设备的相册中存储的图像,或者,电子设备从云端获取的图片)。
步骤920:根据目标图像超分辨率网络对所述待处理图像进行超分辨率处理得到目标图像,目标图像为待处理图像对应的超分辨率图像。
其中,上述目标图像超分辨率网络可以是根据图11所示的方法得到的。
上述目标图像超分辨率网络是在搜索空间中通过图像超分辨率网络结构搜索确定的网络,搜索空间是通过基本单元和网络结构参数构建的,搜索空间用于搜索图像超分辨率网络结构,网络结构参数包括构建所述基本单元使用的基本模块的类型,基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,基本模块包括第一模块,第一模块用于对第一输入特征图进行残差连接操作和降维操作,残差连接操作是指将所述第一输入特征图与经过所述第一模块处理后的特征图进行特征相加处理,降维操作用于将所述第一输入特征图的尺度从原始的第一尺度变换至第二尺度,第二尺度小于第一尺度,目标图像超分辨率网络中至少包括所述第一模块,所述第一模块处理后的特征图的尺度和所述第一输入特征图的尺度相同。
可选地,在一种可能的实现方式中,所述基本单元是用于构建图像超分辨率网络的基础模块。
可选地,在一种可能的实现方式中,所述降维操作可以包括池化操作和步长为Q的卷积操作中的至少一项,Q为大于1的正整数。
可选地,在一种可能的实现方式中,所述第一模块处理后的特征图为经过升维操作后的特征图,所述升维操作是指将经过所述降维处理后的特征图的尺度恢复至所述第一尺度,所述残差连接操作是指将所述第一输入特征图与经过所述升维操作处理后的特征图进行特征相加处理。
可选地,在一种可能的实现方式中,所述第一模块还用于对所述第一输入特征图进行密集连接操作,其中,所述密集连接操作是指将i-1个卷积层中各个卷积层的输出特征图以及所述第一输入特征图进行特征拼接作为第i个卷积层的输入特征图,i为大于1的正整数。
可选地,在一种可能的实现方式中,所述密集连接操作为循环的密集连接操作,所述循环的密集连接操作是指对经过通道压缩处理后的所述第一输入特征图进行特征拼接处理。
可选地,在一种可能的实现方式中,所述第一模块还用于进行重排操作,所述重排操作是指将所述第一输入特征图的多个第一通道特征按照预设规则进行合并处理生成一个第二通道特征,其中,所述第二通道特征的分辨率高于所述第一通道特征的分辨率。
可选地,在一种可能的实现方式中,所述基本模块还包括第二模块和/或第三模块,其中,所述第二模块用于对第二输入特征图进行通道压缩操作、所述残差连接操作以及所述密集连接操作,所述通道压缩操作是指对所述第二输入特征图进行卷积核为1×1的卷积操作;所述第三模块用于对第三输入特征图进行通道交换操作、所述残差连接操作以及所述密集连接操作,所述第三输入特征图中包括M个子特征图,所述M子特征图中每个子特征图包括至少两个相邻的通道特征,所述通道交换处理是指将所述M个子特征图对应的至少两个相邻的通道特征进行重新排序,使得所述M个子特征图中不同子特征图对应的通道特征相邻,M为大于1的整数,所述第一输入特征图、所述第二输入特征图以及所述第三输入特征图对应相同的图像。
可选地,在一种可能的实现方式中,所述目标图像超分辨率网络是通过多级加权联合损失函数对第一图像超分辨率网络进行反向传播迭代训练确定的网络,其中,所述多级加权联合损失函数是根据所述第一图像超分辨率网络中的每个所述基本单元输出的特征图对应的预测超分辨率图像与样本超分辨率图像之间的损失确定的,所述第一图像超分变率网络是指在所述搜索空间中通过进化算法进行图像超分辨率网络结构搜索确定的网络。
可选地,在一种可能的实现方式中,所述多级加权联合损失函数是根据以下等式得到的,
其中,L表示所述多级加权联合损失函数,Lk表示所述第一图像超分辨率网络的第k个所述基本单元的损失值,所述损失值是指所述第k个所述基本单元的输出特征图对应的预测超分辨率图像与所述样本超分辨率图像之间的图像损失,λk,t表示在t时刻所述第k层的损失值的权重,N表示所述第一图像超分辨率网络包括的所述基本单元的数量,N为大于或等于1的整数。
可选地,在一种可能的实现方式中,所述第一图像超分辨率网络是在P个候选网络结构中每个候选网络结构的性能参数确定的,所述P个候选网络结构是根据所述基本单元随机生成的,所述性能参数是指评估通过采用所述多级加权联合损失函数训练后的所述P个候选网络结构的性能的参数,所述性能参数包括峰值性噪比,所述峰值信噪比用于指示通过所述每个候选网络结构得到的预测超分图像与样本超分图像之间的差异。
图26是本申请实施例的提供的图像显示方法的示意性流程图。图26所示的方法1000包括步骤1010至1040,下面分别对这些步骤进行详细的描述。
步骤1010、检测到用户用于打开相机的第一操作。
步骤1020、响应于所述第一操作,在所述显示屏上显示拍摄界面,在所述显示屏上显示拍摄界面,所述拍摄界面上包括取景框,所述取景框内包括第一图像。
在一个示例中,用户的拍摄行为可以包括用户打开相机的第一操作;响应于所述第一操作,在显示屏上显示拍摄界面。
图27中的(a)示出了手机的一种图形用户界面(graphical user interface,GUI),该GUI为手机的桌面1110。当电子设备检测到用户点击桌面1110上的相机应用(application,APP)的图标1120的操作后,可以启动相机应用,显示如图27中的(b)所示的另一GUI,该GUI可以称为拍摄界面1130。该拍摄界面1130上可以包括取景框1140。在预览状态下,该取景框1140内可以实时显示预览图像。
示例性的,参见图27中的(b),电子设备在启动相机后,取景框1140内可以显示有第一图像,该第一图像为彩色图像。拍摄界面上还可以包括用于指示拍照模式的控件1150,以及其它拍摄控件。
在一个示例中,用户的拍摄行为可以包括用户打开相机的第一操作;响应于所述第一操作,在显示屏上显示拍摄界面。例如,电子设备可以检测到用户点击桌面上的相机应用(application,APP)的图标的第一操作后,可以启动相机应用,显示拍摄界面。在拍摄界面上可以包括取景框,可以理解的是,在拍照模式和录像模式下,取景框的大小可以不同。例如,取景框可以为拍照模式下的取景框。在录像模式下,取景框可以为整个显示屏。在预览状态下即可以是用户打开相机且未按下拍照/录像按钮之前,该取景框内可以实时显示预览图像。
在一个示例中,预览图像可以为彩色图像,预览图像可以是在相机设置为自动分辨率的情况下显示的图像。
步骤1030、检测到所述用户指示相机的第二操作。
例如,可以是检测到用户指示第一处理模式的第二操作。其中,第一处理模式可以是专业拍摄模(例如,超分辨率拍摄模式)。参见图28(a),拍摄界面上包括拍摄选项1160,在电子设备检测到用户点击拍摄选项1160后,参见图28(b),电子设备显示拍摄模式界面。在电子设备检测到用户点击拍摄模式界面上用于指示专业拍摄模式1161后,手机进入专业拍摄模式。
例如,可以是检测到用户用于指示拍摄的第二操作,该第二操作为在拍摄远距离的物体或者拍摄微小的物体的情况下用于指示拍摄的操作。参见图28(c)中,电子设备在低照度环境下,检测到用户用于指示拍摄的第二操作1170。
应理解,用户用于指示拍摄行为的第二操作可以包括按下电子设备的相机中的拍摄按钮,也可以包括用户设备通过语音指示电子设备进行拍摄行为,或者,还可以包括用户其它的指示电子设备进行拍摄行为。上述为举例说明,并不对本申请作任何限定。
步骤1040、响应于所述第二操作,在所述取景框内显示第二图像,所述第二图像为针对所述摄像头采集到的所述第一图像进行超分辨率处理后的图像,其中,所述目标图像为所述待处理图像对应的超分辨率图像。
其中,上述目标图像超分辨率网络可以是根据图11所示的方法得到的。
上述目标图像超分辨率网络是在搜索空间中通过图像超分辨率网络结构搜索确定的网络,所述搜索空间是通过基本单元和网络结构参数构建的,所述搜索空间用于搜索图像超分辨率网络结构,所述网络结构参数包括构建所述基本单元使用的基本模块的类型,所述基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,所述基本模块包括第一模块,所述第一模块用于对第一输入特征图进行残差连接操作和降维操作,所述残差连接操作是指将所述第一输入特征图与经过所述第一模块处理后的特征图进行特征相加处理,所述降维操作用于将所述第一输入特征图的尺度从原始的第一尺度变换至第二尺度,所述第二尺度小于所述第一尺度,所述目标图像超分辨率网络中至少包括所述第一模块,所述第一模块处理后的特征图的尺度和所述第一输入特征图的尺度相同。
参见图28,图28(d)中取景框内显示的是第二图像,图28(c)中取景框内显示的是第一图像,第二图像和第一图像的内容相同或者实质上相同,但是第二图像的画质优于第一图像,例如,第二图像的分辨率高于第一图像的分辨率。
可选地,在一种可能的实现方式中,所述基本单元是用于构建图像超分辨率网络的基础模块。
可选地,在一种可能的实现方式中,所述降维操作可以包括池化操作和步长为Q的卷积操作中的至少一项,Q为大于1的正整数。
可选地,在一种可能的实现方式中,所述第一模块处理后的特征图为经过升维操作后的特征图,所述升维操作是指将经过所述降维处理后的特征图的尺度恢复至所述第一尺度,所述残差连接操作是指将所述第一输入特征图与经过所述升维操作处理后的特征图进行特征相加处理。
可选地,在一种可能的实现方式中,所述第一模块还用于对所述第一输入特征图进行密集连接操作,其中,所述密集连接操作是指将i-1个卷积层中各个卷积层的输出特征图以及所述第一输入特征图进行特征拼接作为第i个卷积层的输入特征图,i为大于1的正整数。
可选地,在一种可能的实现方式中,所述密集连接操作为循环的密集连接操作,所述循环的密集连接操作是指对经过通道压缩处理后的所述第一输入特征图进行特征拼接处理。
可选地,在一种可能的实现方式中,所述第一模块还用于进行重排操作,所述重排操作是指将所述第一输入特征图的多个第一通道特征按照预设规则进行合并处理生成一个第二通道特征,其中,所述第二通道特征的分辨率高于所述第一通道特征的分辨率。
可选地,在一种可能的实现方式中,所述基本模块还包括第二模块和/或第三模块,其中,所述第二模块用于对第二输入特征图进行通道压缩操作、所述残差连接操作以及所述密集连接操作,所述通道压缩操作是指对所述第二输入特征图进行卷积核为1×1的卷积操作;所述第三模块用于对第三输入特征图进行通道交换操作、所述残差连接操作以及所述密集连接操作,所述第三输入特征图中包括M个子特征图,所述M子特征图中每个子特征图包括至少两个相邻的通道特征,所述通道交换处理是指将所述M个子特征图对应的至少两个相邻的通道特征进行重新排序,使得所述M个子特征图中不同子特征图对应的通道特征相邻,所述M为大于1的整数,所述第一输入特征图、所述第二输入特征图以及所述第三输入特征图对应相同的图像。
可选地,在一种可能的实现方式中,所述目标图像超分辨率网络是通过多级加权联合损失函数对第一图像超分辨率网络进行反向传播迭代训练确定的网络,其中,所述多级加权联合损失函数是根据所述第一图像超分辨率网络中的每个所述基本单元输出的特征图对应的预测超分辨率图像与样本超分辨率图像之间的损失确定的,所述第一图像超分变率网络是指在所述搜索空间中通过进化算法进行图像超分辨率网络结构搜索确定的网络。
可选地,在一种可能的实现方式中,所述多级加权联合损失函数是根据以下等式得到的,
其中,L表示所述多级加权联合损失函数,Lk表示所述第一图像超分辨率网络的第k个所述基本单元的损失值,所述损失值是指所述第k个所述基本单元的输出特征图对应的预测超分辨率图像与样本超分辨率图像之间的图像损失,λk,t表示在t时刻所述第k层的损失值的权重,N表示所述第一图像超分辨率网络包括的所述基本单元的数量,N为大于或等于1的整数。
可选地,在一种可能的实现方式中,所述第一图像超分辨率网络是在P个候选网络结构中每个候选网络结构的性能参数确定的,所述P个候选网络结构是根据所述基本单元随机生成的,所述性能参数是指评估通过采用所述多级加权联合损失函数训练后的所述P个候选网络结构的性能的参数,所述性能参数包括峰值性噪比,所述峰值信噪比用于指示通过所述每个候选网络结构得到的预测超分图像与样本超分图像之间的差异。
应理解,上述举例说明是为了帮助本领域技术人员理解本申请实施例,而非要将本申请实施例限于所例示的具体数值或具体场景。本领域技术人员根据所给出的上述举例说明,显然可以进行各种等价的修改或变化,这样的修改或变化也落入本申请实施例的范围内。
上文结合图1至图28,详细描述了本申请实施例提供的神经网络的搜索方法以及图像处理方法,下面将结合图29和图30,详细描述本申请的装置实施例。应理解,本申请实施例中的神经网络的搜索装置可以执行前述本申请实施例的各种神经网络的搜索方法,图像处理装置可以执行前述本申请实施例的各种图像处理方法,即以下各种产品的具体工作过程,可以参考前述方法实施例中的对应过程。
图29是本申请实施例提供的神经网络的搜索装置的硬件结构示意图。图29所示的神经网络的搜索装置1200(该装置1200具体可以是一种计算机设备)包括存储器1201、处理器1202、通信接口1203以及总线1204。其中,存储器1201、处理器1202、通信接口1203通过总线1204实现彼此之间的通信连接。
存储器1201可以是只读存储器(read only memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(random access memory,RAM)。存储器1201可以存储程序,当存储器1201中存储的程序被处理器1202执行时,处理器1202用于执行本申请实施例的神经网络的搜索方法的各个步骤,例如,执行图11所示的各个步骤。
应理解,本申请实施例所示的神经网络的搜索装置可以是服务器,例如,可以是云端的服务器,或者,也可以是配置于云端的服务器中的芯片。
处理器1202可以采用通用的中央处理器(central processing unit,CPU),微处理器,应用专用集成电路(application specific integrated circuit,ASIC),图形处理器(graphics processing unit,GPU)或者一个或多个集成电路,用于执行相关程序,以实现本申请方法实施例的神经网络的搜索方法。
处理器1202还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请的神经网络的搜索方法的各个步骤可以通过处理器1202中的硬件的集成逻辑电路或者软件形式的指令完成。
上述处理器1202还可以是通用处理器、数字信号处理器(digital signalprocessing,DSP)、专用集成电路(ASIC)、现成可编程门阵列(field programmable gatearray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1201,处理器1202读取存储器1201中的信息,结合其硬件完成本神经网络的搜索装置中包括的单元所需执行的功能,或者,执行本申请方法实施例的图11所示的神经网络的搜索方法。
通信接口1203使用例如但不限于收发器一类的收发装置,来实现装置1200与其他设备或通信网络之间的通信。
总线1204可包括在装置1200各个部件(例如,存储器1201、处理器1202、通信接口1203)之间传送信息的通路。
图30是本申请实施例的图像处理装置的硬件结构示意图。图30所示的图像处理装置1300包括存储器1301、处理器1302、通信接口1303以及总线1304。其中,存储器1301、处理器1302、通信接口1303通过总线1304实现彼此之间的通信连接。
存储器1301可以是ROM,静态存储设备和RAM。存储器1301可以存储程序,当存储器1301中存储的程序被处理器1302执行时,处理器1302和通信接口1303用于执行本申请实施例的图像处理方法的各个步骤,例如,可以执行图25和图26所示的图像处理方法的各个步骤。
处理器1302可以采用通用的,CPU,微处理器,ASIC,GPU或者一个或多个集成电路,用于执行相关程序,以实现本申请实施例的图像处理装置中的单元所需执行的功能,或者执行本申请方法实施例的图像处理方法。
处理器1302还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请实施例的图像处理方法的各个步骤可以通过处理器1302中的硬件的集成逻辑电路或者软件形式的指令完成。
上述处理器1302还可以是通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1301,处理器1302读取存储器1301中的信息,结合其硬件完成本申请实施例的图像处理装置中包括的单元所需执行的功能,或者执行本申请方法实施例的图像处理方法。
通信接口1303使用例如但不限于收发器一类的收发装置,来实现装置1300与其他设备或通信网络之间的通信。例如,可以通过通信接口1303获取待处理图像。
总线1304可包括在装置1300各个部件(例如,存储器1301、处理器1302、通信接口1303)之间传送信息的通路。
应注意,尽管上述装置1200和装置1300仅仅示出了存储器、处理器、通信接口,但是在具体实现过程中,本领域的技术人员应当理解,1200和装置1300还可以包括实现正常运行所必须的其他器件。同时,根据具体需要,本领域的技术人员应当理解,上述装置1200和装置1300还可包括实现其他附加功能的硬件器件。此外,本领域的技术人员应当理解,上述装置1200和装置1300也可仅仅包括实现本申请实施例所必须的器件,而不必包括图29或图30中所示的全部器件。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (22)

1.一种神经网络的搜索方法,其特征在于,包括:
构建基本单元,所述基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,所述基本模块包括第一模块,所述第一模块用于对第一输入特征图进行降维操作和残差连接操作,所述降维操作用于将所述第一输入特征图的尺度从原始的第一尺度变换至第二尺度,所述第二尺度小于所述第一尺度,所述残差连接操作用于将所述第一输入特征图与经过所述第一模块处理后的特征图进行特征相加处理,所述第一模块处理后的特征图的尺度和所述第一输入特征图的尺度相同;
根据所述基本单元和网络结构参数构建搜索空间,其中,所述网络结构参数包括构建所述基本单元使用的基本模块的类型,所述搜索空间用于搜索图像超分辨率网络结构;
在所述搜索空间中进行图像超分辨率网络结构搜索确定目标图像超分辨率网络,所述目标图像超分辨率网络用于对待处理图像进行超分辨率处理,所述目标图像超分辨率网络中至少包括所述第一模块,所述目标图像超分辨率网络为计算量小于第一预设阈值且图像超分辨率精度大于第二预设阈值的网络。
2.如权利要求1所述的搜索方法,其特征在于,所述降维操作包括池化操作和步长为Q的卷积操作中的至少一项,Q为大于1的正整数。
3.如权利要求1或2所述的搜索方法,其特征在于,所述第一模块处理后的特征图为经过升维操作后的特征图,所述升维操作是指将经过所述降维处理后的特征图的尺度恢复至所述第一尺度,所述残差连接操作是指将所述第一输入特征图与经过所述升维操作处理后的特征图进行特征相加处理。
4.如权利要求1至3中任一项所述的搜索方法,其特征在于,所述第一模块还用于对所述第一输入特征图进行密集连接操作,其中,所述密集连接操作是指将i-1个卷积层中各个卷积层的输出特征图以及所述第一输入特征图进行特征拼接作为第i个卷积层的输入特征图,i为大于1的正整数。
5.如权利要求4所述的搜索方法,其特征在于,所述密集连接操作为循环的密集连接操作,所述循环的密集连接操作是指对经过通道压缩处理后的所述第一输入特征图进行特征拼接处理。
6.如权利要求1至5中任一项所述的搜索方法,其特征在于,所述第一模块还用于重排操作,所述重排操作是指将所述第一输入特征图的多个第一通道特征按照预设规则进行合并处理生成一个第二通道特征,其中,所述第二通道特征的分辨率高于所述第一通道特征的分辨率。
7.根据权利要求4至6中任一项所述的搜索方法,其特征在于,所述基本模块还包括第二模块和/或第三模块,其中,所述第二模块用于对第二输入特征图进行通道压缩操作、所述残差连接操作以及密集连接操作,所述通道压缩操作是指对所述第二输入特征图进行卷积核为1×1的卷积操作;所述第三模块用于对第三输入特征图进行通道交换操作、所述残差连接操作以及密集连接操作,所述第三输入特征图中包括M个子特征图,所述M个子特征图中每个子特征图包括至少两个相邻的通道特征,所述通道交换处理是指将所述M个子特征图对应的至少两个相邻的通道特征进行重新排序,使得所述M个子特征图中不同子特征图对应的通道特征相邻,M为大于1的整数,所述第一输入特征图、所述第二输入特征图以及所述第三输入特征图对应相同的图像。
8.如权利要求1至7中任一项所述的搜索方法,其特征在于,所述在所述搜索空间中进行图像超分辨率网络结构搜索确定目标图像超分辨率网络,包括:
在所述搜索空间中通过进化算法进行图像超分辨率网络结构搜索确定第一图像超分辨率网络;
通过多级加权联合损失函数对所述第一图像超分辨率网络进行反向传播迭代训练确定所述目标图像超分辨率网络,其中,所述多级加权联合损失函数是根据所述第一图像超分辨率网络中的每个所述基本单元输出的特征图对应的预测超分辨率图像与样本超分辨率图像之间的损失确定的。
9.如权利要求8所述的搜索方法,其特征在于,所述多级加权联合损失函数是根据以下等式得到的,
其中,L表示所述多级加权联合损失函数,Lk表示所述第一图像超分辨率网络的第k个所述基本单元的损失值,所述损失值是指所述第k个所述基本单元的输出特征图对应的预测超分辨率图像与所述样本超分辨率图像之间的图像损失,λk,t表示在t时刻所述第k层的损失值的权重,N表示所述第一图像超分辨率网络中包括的所述基本单元的数量,N为大于或等于1的整数。
10.如权利要求8或9所述的搜索方法,其特征在于,所述在所述搜索空间中通过进化算法进行图像超分辨率网络结构搜索确定第一图像超分辨率网络,包括:
根据所述基本单元随机生成P个候选网络结构,P为大于1的整数;
采用所述多级加权联合损失函数训练所述P个候选网络结构;
评估训练后的所述P个候选网络结构中每个候选网络结构的性能参数,所述性能参数包括峰值信噪比,所述峰值信噪比用于指示通过所述每个候选网络结构得到的预测超分图像与样本超分图像之间的差异;
根据所述候选网络的性能参数确定所述第一图像超分辨率网络。
11.一种神经网络的搜索装置,其特征在于,包括:
存储器,用于存储程序;
处理器,用于执行所述存储器存储的程序,当所述存储器存储的程序被执行时,所述处理器用于执行以下过程:
构建基本单元,所述基本单元是通过神经网络的基本操作将基本模块进行连接得到的一种网络结构,所述基本模块包括第一模块,所述第一模块用于对第一输入特征图进行降维操作和残差连接操作,所述降维操作用于将所述第一输入特征图的尺度从原始的第一尺度变换至第二尺度,所述第二尺度小于所述第一尺度,所述残差连接操作用于将所述第一输入特征图与经过所述第一模块处理后的特征图进行特征相加处理,所述第一模块处理后的特征图的尺度和所述第一输入特征图的尺度相同;
根据所述基本单元和网络结构参数构建搜索空间,其中,所述网络结构参数包括构建所述基本单元使用的基本模块的类型,所述搜索空间用于搜索图像超分辨率网络结构;
在所述搜索空间中进行图像超分辨率网络结构搜索确定目标图像超分辨率网络,所述目标图像超分辨率网络用于对待处理图像进行超分辨率处理,所述目标图像超分辨率网络中至少包括所述第一模块,所述目标图像超分辨率网络为计算量小于第一预设阈值且图像超分辨率精度大于第二预设阈值的网络。
12.如权利要求11所述的搜索装置,其特征在于,所述降维操作包括池化操作和步长为Q的卷积操作中的至少一项,Q为大于1的正整数。
13.如权利要求11或12所述的搜索装置,其特征在于,所述第一模块处理后的特征图为经过升维操作后的特征图,所述升维操作是指将经过所述降维处理后的特征图的尺度恢复至所述第一尺度,所述残差连接操作是指将所述第一输入特征图与经过所述升维操作处理后的特征图进行特征相加处理。
14.如权利要求11至13中任一项所述的搜索装置,其特征在于,所述第一模块还用于对所述第一输入特征图进行密集连接操作,其中,所述密集连接操作是指将i-1个卷积层中各个卷积层的输出特征图以及所述第一输入特征图进行特征拼接作为第i个卷积层的输入特征图,i为大于1的正整数。
15.如权利要求14所述的搜索装置,其特征在于,所述密集连接操作为循环的密集连接操作,所述循环的密集连接操作是指对经过通道压缩处理后的所述第一输入特征图进行特征拼接处理。
16.如权利要求11至15中任一项所述的搜索装置,其特征在于,所述第一模块还用于重排操作,所述重排操作是指将所述第一输入特征图的多个第一通道特征按照预设规则进行合并处理生成一个第二通道特征,其中,所述第二通道特征的分辨率高于所述第一通道特征的分辨率。
17.根据权利要求14至16中任一项所述的搜索装置,其特征在于,所述基本模块还包括第二模块和/或第三模块,其中,所述第二模块用于对第二输入特征图进行通道压缩操作、所述残差连接操作以及密集连接操作,所述通道压缩操作是指对所述第二输入特征图进行卷积核为1×1的卷积操作;所述第三模块用于对第三输入特征图进行通道交换操作、所述残差连接操作以及密集连接操作,所述第三输入特征图中包括M个子特征图,所述M个子特征图中每个子特征图包括至少两个相邻的通道特征,所述通道交换处理是指将所述M个子特征图对应的至少两个相邻的通道特征进行重新排序,使得所述M个子特征图中不同子特征图对应的通道特征相邻,M为大于1的整数,所述第一输入特征图、所述第二输入特征图以及所述第三输入特征图对应相同的图像。
18.如权利要求11至17中任一项所述的搜索装置,其特征在于,所述在所述搜索空间中进行图像超分辨率网络结构搜索确定目标图像超分辨率网络,包括:
在所述搜索空间中通过进化算法进行图像超分辨率网络结构搜索确定第一图像超分辨率网络;
通过多级加权联合损失函数对所述第一图像超分辨率网络进行反向传播迭代训练确定所述目标图像超分辨率网络,其中,所述多级加权联合损失函数是根据所述第一图像超分辨率网络中的每个所述基本单元输出的特征图对应的预测超分辨率图像与样本超分辨率图像之间的损失确定的。
19.如权利要求18所述的搜索装置,其特征在于,所述多级加权联合损失函数是根据以下等式得到的,
其中,L表示所述多级加权联合损失函数,Lk表示所述第一图像超分辨率网络的第k个所述基本单元的损失值,所述损失值是指所述第k个所述基本单元的输出特征图对应的预测超分辨率图像与所述样本超分辨率图像之间的图像损失,λk,t表示在t时刻所述第k层的损失值的权重,N表示所述第一图像超分辨率网络包括的所述基本单元的数量,N为大于或等于1的整数。
20.如权利要求18或19所述的搜索装置,其特征在于,所述在所述搜索空间中通过进化算法进行图像超分辨率网络结构搜索确定第一图像超分辨率网络,包括:
根据所述基本单元随机生成P个候选网络结构,P为大于1的整数;
采用所述多级加权联合损失函数训练所述P个候选网络结构;
评估训练后的所述P个候选网络结构中每个候选网络结构的性能参数,所述性能参数包括峰值信噪比,所述峰值信噪比用于指示通过所述每个候选网络结构得到的预测超分图像与样本超分图像之间的差异;
根据所述候选网络的性能参数确定所述第一图像超分辨率网络。
21.一种计算机可读存储介质,其特征在于,所述计算机可读介质存储用于设备执行的程序代码,该程序代码包括用于执行如权利要求1至10中任一项所述的搜索方法。
22.一种芯片,其特征在于,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,以执行如权利要求1至10中任一项所述的搜索方法。
CN201910695706.7A 2019-07-30 2019-07-30 神经网络的搜索方法及装置 Active CN112308200B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910695706.7A CN112308200B (zh) 2019-07-30 2019-07-30 神经网络的搜索方法及装置
PCT/CN2020/105369 WO2021018163A1 (zh) 2019-07-30 2020-07-29 神经网络的搜索方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910695706.7A CN112308200B (zh) 2019-07-30 2019-07-30 神经网络的搜索方法及装置

Publications (2)

Publication Number Publication Date
CN112308200A CN112308200A (zh) 2021-02-02
CN112308200B true CN112308200B (zh) 2024-04-26

Family

ID=74230275

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910695706.7A Active CN112308200B (zh) 2019-07-30 2019-07-30 神经网络的搜索方法及装置

Country Status (2)

Country Link
CN (1) CN112308200B (zh)
WO (1) WO2021018163A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112580639B (zh) * 2021-03-01 2021-08-13 四川大学 一种基于进化神经网络模型压缩的早期胃癌图像识别方法
CN113065426B (zh) * 2021-03-19 2023-10-17 浙江理工大学 基于通道感知的手势图像特征融合方法
CN112990053B (zh) * 2021-03-29 2023-07-25 腾讯科技(深圳)有限公司 图像处理方法、装置、设备及存储介质
CN113033422A (zh) * 2021-03-29 2021-06-25 中科万勋智能科技(苏州)有限公司 基于边缘计算的人脸检测方法、***、设备和存储介质
CN113869395B (zh) * 2021-09-26 2024-05-24 大连理工大学 基于特征融合及神经网络搜索的轻量型水下目标检测方法
CN113706530A (zh) * 2021-10-28 2021-11-26 北京矩视智能科技有限公司 基于网络结构的表面缺陷区域分割模型生成方法及装置
CN115273129B (zh) * 2022-02-22 2023-05-05 珠海数字动力科技股份有限公司 基于神经架构搜索的轻量级人体姿态估计方法及装置
CN114998958B (zh) * 2022-05-11 2024-04-16 华南理工大学 一种基于轻量化卷积神经网络的人脸识别方法
CN115131727B (zh) * 2022-06-12 2024-03-15 西北工业大学 一种基于残差单元结构搜索的行人重识别方法
CN115841587B (zh) * 2022-10-24 2023-11-24 智慧眼科技股份有限公司 图像分类任务的特征提取方法、装置、设备及存储介质
CN115601792A (zh) * 2022-12-14 2023-01-13 长春大学(Cn) 一种牛脸图像增强方法
CN116416468B (zh) * 2023-04-11 2023-10-03 安徽中科星联信息技术有限公司 一种基于神经架构搜索的sar目标检测方法
CN116703729B (zh) * 2023-08-09 2023-12-19 荣耀终端有限公司 一种图像处理方法、终端、存储介质及程序产品
CN117058000B (zh) * 2023-10-10 2024-02-02 苏州元脑智能科技有限公司 用于图像超分辨率的神经网络架构搜索方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108629736A (zh) * 2017-03-15 2018-10-09 三星电子株式会社 用于设计超分辨率深度卷积神经网络的***和方法
CN108985457A (zh) * 2018-08-22 2018-12-11 北京大学 一种受优化算法启发的深度神经网络结构设计方法
CN109284820A (zh) * 2018-10-26 2019-01-29 北京图森未来科技有限公司 一种深度神经网络的结构搜索方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016132152A1 (en) * 2015-02-19 2016-08-25 Magic Pony Technology Limited Interpolating visual data
US11354577B2 (en) * 2017-03-15 2022-06-07 Samsung Electronics Co., Ltd System and method for designing efficient super resolution deep convolutional neural networks by cascade network training, cascade network trimming, and dilated convolutions
CN109862370A (zh) * 2017-11-30 2019-06-07 北京大学 视频超分辨率处理方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108629736A (zh) * 2017-03-15 2018-10-09 三星电子株式会社 用于设计超分辨率深度卷积神经网络的***和方法
CN108985457A (zh) * 2018-08-22 2018-12-11 北京大学 一种受优化算法启发的深度神经网络结构设计方法
CN109284820A (zh) * 2018-10-26 2019-01-29 北京图森未来科技有限公司 一种深度神经网络的结构搜索方法及装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Fast and Accurate Single Image Super-Resolution via Information Distillation Network;Zheng Hui等;Proceedings of IEEE Conference on Computer Vision and Pattern Recognition(CVPR);20181231;第723-731页 *
Hierarchical Representations for Efficient Architecture Search;Hanxiao Liu等;arXiv:1711.00436[cs.LG];20180222;第1-13页 *
基于进化算法的神经网络研究与优化;何明慧;中国优秀硕士学位论文全文数据库 信息科技辑;20180815;第2-3章 *
遥感影像要素提取的可变结构卷积神经网络方法;王华斌;韩旻;王光辉;李玉;;测绘学报;20190515(第05期);第583-596页 *

Also Published As

Publication number Publication date
WO2021018163A1 (zh) 2021-02-04
CN112308200A (zh) 2021-02-02

Similar Documents

Publication Publication Date Title
CN112308200B (zh) 神经网络的搜索方法及装置
CN110188795B (zh) 图像分类方法、数据处理方法和装置
CN111667399B (zh) 风格迁移模型的训练方法、视频风格迁移的方法以及装置
CN111402130B (zh) 数据处理方法和数据处理装置
WO2020177651A1 (zh) 图像分割方法和图像处理装置
CN112446270B (zh) 行人再识别网络的训练方法、行人再识别方法和装置
CN111914997B (zh) 训练神经网络的方法、图像处理方法及装置
CN112236779A (zh) 基于卷积神经网络的图像处理方法和图像处理装置
CN109993707B (zh) 图像去噪方法和装置
CN110222717B (zh) 图像处理方法和装置
CN112418392A (zh) 一种神经网络构建方法以及装置
CN110717851A (zh) 图像处理方法及装置、神经网络的训练方法、存储介质
CN113284054A (zh) 图像增强方法以及图像增强装置
CN112561027A (zh) 神经网络架构搜索方法、图像处理方法、装置和存储介质
CN112215332B (zh) 神经网络结构的搜索方法、图像处理方法和装置
CN112070664B (zh) 一种图像处理方法以及装置
CN112446380A (zh) 图像处理方法和装置
CN110222718B (zh) 图像处理的方法及装置
CN112581379A (zh) 图像增强方法以及装置
CN112598597A (zh) 一种降噪模型的训练方法及相关装置
CN111695673B (zh) 训练神经网络预测器的方法、图像处理方法及装置
CN113191489B (zh) 二值神经网络模型的训练方法、图像处理方法和装置
CN113011562A (zh) 一种模型训练方法及装置
CN112561028A (zh) 训练神经网络模型的方法、数据处理的方法及装置
CN111797882A (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
GR01 Patent grant
GR01 Patent grant