CN111401396A - 图像识别方法及装置 - Google Patents

图像识别方法及装置 Download PDF

Info

Publication number
CN111401396A
CN111401396A CN201910003905.7A CN201910003905A CN111401396A CN 111401396 A CN111401396 A CN 111401396A CN 201910003905 A CN201910003905 A CN 201910003905A CN 111401396 A CN111401396 A CN 111401396A
Authority
CN
China
Prior art keywords
neural network
convolutional neural
preprocessing
image data
loss function
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.)
Granted
Application number
CN201910003905.7A
Other languages
English (en)
Other versions
CN111401396B (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201910003905.7A priority Critical patent/CN111401396B/zh
Publication of CN111401396A publication Critical patent/CN111401396A/zh
Application granted granted Critical
Publication of CN111401396B publication Critical patent/CN111401396B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]

Landscapes

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

Abstract

本申请实施例公开了一种图像识别方法及装置,其中,图像识别方法包括:获取目标图像数据;获取目标图像数据的预处理结果;通过预设的卷积神经网络,确定预处理后的目标图像数据的识别结果,其中,所述卷积神经网络根据应用多种预处理方式预处理后的多个所述图像数据训练得到。本申请能够有效提高应用卷积神经网络进行图像识别的准确性。

Description

图像识别方法及装置
技术领域
本申请涉及计算机数据处理技术领域,尤其涉及一种图像识别方法及装置。
背景技术
卷积神经网络CNN(Convolutional Neural Networks)作为深度学习的代表算法之一,已广泛用于计算机视觉任务中,并越来越多地从学术领域渗透到工程项目领域。
为了方便对卷积神经网络进行模型训练,目前已出现了针对卷积神经网络的多种类型的深度学习库,且不同的深度学习库均各有特点。而随着卷积神经网络的广泛应用,也出现了卷积神经网络在训练过程和应用过程中采用不同的深度学习库的情形,因此,在卷积神经网络对应的深度学习库发生变化时,卷积神经网络也需要对应进行转换。
然而,由于不同的深度学习库通常会采用不同的预处理方式,因此,当卷积神经网络对应的深度学习库发生变化时,即使对卷积神经网络进行无损转换,也会因为预处理方式的改变而使得模型输出结果产生偏差。也就是说,在对应的深度学习库发生变化后,由于卷积神经网络的鲁棒性较差,会导致应用该卷积神经网络进行图像识别准确性低的问题。
发明内容
针对现有技术中的问题,本申请提供一种图像识别方法及装置,能够有效提高应用卷积神经网络进行图像识别的准确性。
为解决上述技术问题,本申请提供以下技术方案:
第一方面,本申请提供一种图像识别方法,包括:
获取目标图像数据;
获取目标图像数据的预处理结果;
通过预设的卷积神经网络,确定预处理后的目标图像数据的识别结果,其中,所述卷积神经网络根据应用多种预处理方式预处理后的多个所述图像数据训练得到。
第二方面,本申请提供一种终端设备,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现所述的图像识别方法的步骤。
第三方面,本申请提供一种服务器,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现所述的图像识别方法的步骤。
第四方面,本申请提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述图像识别方法的步骤。
第五方面,本申请提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现所述图像识别方法的步骤。
本申请提供的一种图像识别方法及装置,其中,该图像识别方法通过获取目标图像数据;获取目标图像数据的预处理结果;通过预设的卷积神经网络,确定预处理后的目标图像数据的识别结果,其中,所述卷积神经网络根据应用多种预处理方式预处理后的多个所述图像数据训练得到,能够有效提高卷积神经网络的鲁棒性,即使在卷积神经网络对应的深度学习库发生变化时,也能够保证输出结果的准确性,即能够提高应用卷积神经网络进行图像识别的准确性。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例的图像识别系统的架构示意图;
图2是本申请实施例的包含有图像采集部件103的图像识别系统的架构示意图;
图3是卷积神经网络通用结构的举例示意图;
图4是本申请实施例的离线状态下建立卷积神经网络的流程示意图;
图5是本申请实施例的原卷积神经网络转化为增加有随机扰动层的卷积神经网络的举例示意图;
图6是本申请实施例的在线状态下应用卷积神经网络进行图像识别的流程示意图;
图7是本申请应用实例的农作物识别场景的具体模型训练及预测的流程示意图;
图8是本申请应用实例的一个时段的玉米图像识别结果比较示意图;
图9是本申请应用实例的另一时段的玉米图像识别结果比较示意图;
图10是本申请实施例的一种图像识别方法的流程示意图;
图11是本申请实施例的一种图像识别方法中卷积神经网络的构建过程的流程示意图;
图12是本申请实施例的一种图像识别方法中步骤1201和步骤1202的流程示意图;
图13是本申请实施例的一种图像识别装置的第一种结构示意图;
图14是本申请实施例的图像识别装置的第二种结构示意图;
图15是本申请实施例的图像识别装置的第三种结构示意图;
图16是本申请实施例的图像识别方法的服务器的硬件结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
现有的卷积神经网络对应的深度学习库至少包含有以下种类:
(1)神经网络框架Caffe(Convolutional Architecture for Fast FeatureEmbedding);
(2)符号数学系统TensorFlow;
(3)深度学习库Mxnet;
(4)神经网络框架Pytorch。
其中,由于不同的深度学习库各有特点,比如Caffe方便模型工程上的部署,而Tensorflow可更灵活构建网络,基于此,在卷积神经网络的构建及应用过程中,则有可能出现实验阶段使用一个较灵活的深度学习库,上线又使用另一个库的情况,这样就需要把模型转换成特定库的某种模型。且由于不同的深度学习库也往往会采用不同的预处理方式,比如Caffe使用开源计算机视觉库opencv(Open Source Computer Vision Library)来进行预处理,Pytorch则使用图像处理标准库PIL(Python Imaging Library)来做预处理,若将Pytorch用PIL预处理训练好的模型转换成Caffe模型,且Caffe模型又采用opencv来做预处理,即使模型无损转换,也会因为预处理方式的转变而产生处理结果上的偏差,这在工程上对模型的最终部署效果是否能达到预期是一个较大的影响因素;同时如果仅仅是因为预处理的不同而导致结果出现较大偏差,这样的卷积神经网络的鲁棒性较差。
上述现有技术所存在的问题为:针对现有的卷积神经网络在对应的深度学习库发生变化时的鲁棒性差,进而无法保证其在进行图像识别时输出的识别结果的准确性的问题。
基于此,为了既能够提高卷积神经网络的鲁棒性,又能够保证应用卷积神经网络进行图像识别的准确性,考虑从改变卷积神经网络入手,即通过增加训练样本的预处理方式的多样性来改变卷积神经网络的模型训练过程,无论卷积神经网络对于的深度学习库是否发生变化,本申请实施例均能够通过根据多种预处理方式对多个所述图像数据进行预处理,再应用多个预处理后的图像数据,训练得到用于图像识别的卷积神经网络,来使得本申请实施例中的卷积神经网络相对于现有技术,能够有效提高卷积神经网络的鲁棒性,即使在卷积神经网络对应的深度学习库发生变化时,也能够提高输出结果的准确性,即能够提高应用卷积神经网络进行图像识别的准确性。
为此,在本申请实施例中提供了一种图像识别系统,参见图1,该图像识别系统包括:服务器101和客户端设备102,且客户端设备102可以包含有显示界面,各种不同类型的深度学习库均可以部署在所述服务器101中。
其中,所述服务器101可以离线执行卷积神经网络的建立过程,即所述服务器101可以从历史图像数据库或客户端设备102等中获取历史图像数据,这些历史图像数据各自均附加有对应的识别结果标签,而后,所述服务器101根据多种预处理方式对多个所述图像数据进行预处理,并应用多个预处理后的图像数据,训练得到用于图像识别的卷积神经网络。而后,所述客户端设备102在线将待识别的目标图像数据发送至所述服务器101,所述服务器101在线接收该目标图像数据,部署有深度学习框架的所述服务器101在线或离线对该目标图像数据进行预处理,并通过训练得到的卷积神经网络,确定预处理后的目标图像数据的识别结果,而后,所述服务器101在线将该目标图像数据的识别结果发送至所述客户端设备102,使得用户自所述客户端设备102获知目标图像数据对应的识别结果。
在实际应用中,进行卷积神经网络的建立和图像识别的部分可以在服务器端执行,即,如图1所示的架构,也可以全部的操作均在客户端设备中完成。具体可以根据客户端设备的处理能力,以及用户使用场景的限制等进行选择。例如,用户可以在线进行模型创建,也可以离线进行模型创建。本申请对此不作限定。
上述客户端设备102可以是手机、平板电脑、可穿戴设备、台式电脑、一体机等等,或者用于进行图像识别的APP,客户端设备102的具体形式本申请不作限定。
为了使得图像识别的效率及整合性更高,参见图2,客户端设备102可以包含有图像采集部件103,例如摄像头。用户可以通过操作客户端设备102在目标场地对目标物品进行图像拍摄,然后直接应用该客户端设备102对采集到的图像进行图像识别的过程并查看图像识别结果,或者应用该客户端设备102将采集到的图像发送至服务器,并接收服务器返回的图像识别结果。
在本申请的一个或多个实施例中,所述卷积神经网络通用结构如图3所示,可以依次包含有输入层、卷积层、池化层、全连接层和输出层。其中,卷积层、池化层和全连接层可以共同组成所述卷积神经网络的隐含层,在隐含层中,卷积层+池化层的组合可以根据模型实际需要在隐含层出现多次,也可以灵活使用卷积层+卷积层,或者卷积层+卷积层+池化层的组合,这些在所述卷积神经网络通用结构中没有限制,图3中的卷积神经网络通用结构为若干卷积层+池化层的组合。
在上述卷积神经网络通用结构中,输入层可以直接处理多维数据。卷积层(Convolution Layer)用于对输入数据进行特征提取,其内部包含多个卷积核,组成卷积核的每个元素都对应一个权重系数和一个偏差量(bias vector),且卷积层的激活函数使用的是ReLU(Rectified Linear Unit)。而在在卷积层后面是池化层(Pooling layer),在卷积层进行特征提取后,输出的特征图会被传递至池化层进行特征选择和信息过滤。在若干卷积层+池化层后面是全连接层(Fully Connected Layer,简称FC),输出层则使用了Softmax激活函数来做图像识别的分类。
为了能够更加有效地提高卷积神经网络的鲁棒性,具体的可以通过所述图像识别系统实现模型建立及图像识别过程,虽然本申请提供了如下述实施例或附图所示的方法操作步骤或装置结构,但基于常规或者无需创造性的劳动在所述方法或装置中可以包括更多或者部分合并后更少的操作步骤或模块单元。在逻辑性上不存在必要因果关系的步骤或结构中,这些步骤的执行顺序或装置的模块结构不限于本申请实施例或附图所示的执行顺序或模块结构。所述的方法或模块结构的在实际中的装置、服务器或终端产品应用时,可以按照实施例或者附图所示的方法或模块结构进行顺序执行或者并行执行(例如并行处理器或者多线程处理的环境、甚至包括分布式处理、服务器集群的实施环境)。
基于上述图像识别系统,本申请实施例可以通过服务器101执行离线卷积神经网络建立过程,并通过客户端设备102以及服务器101执行在线图像识别过程,下面对应用本申请实施例所述的图像识别系统执行离线卷积神经网络建立过程以及在线图像识别部分的应用场景分别进行说明,并应用一农作物识别的具体应用实例进行说明。
(一)离线状态下建立卷积神经网络
为了能够更加有效地提高卷积神经网络的鲁棒性,进而能够提高应用卷积神经网络进行图像识别的准确性,本实施例提供一种应用所述服务器101进行离线建立卷积神经网络的方式,系统离线部分包含有S11到S19共计9个处理步骤,中间过程中形成历史数据文件D1和训练好的卷积神经网络模型文件D2,供在线部分使用,离线部分可以每天运行一次,也可以以流式实时的方式进行模型训练或者其它周期(小时或者15分钟等)调度的方式进行模型训练。本实施例是为了增强深度卷积神经网络预处理鲁棒性而提出的,本实施例能够在保证网络测试精度的前提下,对不同预处理输出鲁棒的结果,参见图4,具体包括如下内容:
S11-增加随机扰动层:
在卷积神经网络通用结构中增加一与输出层结构相同且位置并行的随机扰动层,得到卷积神经网络目标结构,其中的所述随机扰动层的初始权重随机产生。参见图5,CNN-0表示原卷积神经网络或卷积神经网络通用结构,CNN-1表示增加了随机扰动层的卷积神经网络,其中的组成隐含层的卷积层、池化层及全连接层仅为示意性举例。
可以理解的是,所述输出层为所述卷积神经网络通用结构中的原始输出层,在该原始输出层的基础上,再在所述卷积神经网络中增加一随机扰动层,所述随机扰动层和原卷积神经网络最后一层的原始输出层的结构相同,位置上和原卷积神经网络最后一层的原始输出层并行,且该随机扰动层的初始权重随机产生。另外,与原卷积神经网络通用结构不同的是,增加了随机扰动层的卷积神经网络最终会输出层和随机扰动层分别输出一个识别结果,即针对单次的同一输入,增加了随机扰动层的卷积神经网络输出两个识别结果。
基于上述内容可知,随机扰动层仅在初始化方式上与原始输出层不同,其它部分均与原始的输出层相同,包括输出方式等。也就是说,随机扰动层的扰动性体现在初始化权重的随机性,因为增加了对随机扰动的处理,可以加速模型在较少的迭代次数内收敛,在增强深度卷积神经网络预处理鲁棒性的同时,也一定程度上也提升卷积神经网络的输出准确性。
S12-确定多种预处理方式:
确定所述预处理方式的多种类型,以及各类预处理方式分别对应的权重。具体为根据当前卷积神经网络的实际应用场景,选取至少两种预处理方式。例如:应用Caffe框架下的开源计算机视觉库opencv来进行预处理,也应用Pytorch框架下的图像处理标准库PIL来做预处理。
也就是说,与原来网络每次前向都只处理一种预处理不同,采用多种预处理方式对图像数据进行预处理,再将这些预处理后的图像数据用于模型训练的本实施例,其训练过程中每次前向都输入多种预处理的结果,并输出多种结果:
Figure BDA0001934693520000071
其中上标k表示有k种预处理方式。实际应用中,可以选取至少两种预处理,一种预处理可以采用实验阶段所用库默认的预处理库,另一种预处理可以采用工程部署所使用的预处理库。
S13-确定第一损失函数:
根据各种预处理方式分别对应的权重、所述输出层的输出以及所述随机扰动层的输出确定输出层和随机扰动层之间的相关损失函数,该输出层和随机扰动层之间的相关损失函数即为第一损失函数。通过随机扰动层的增加和第一损失函数的确定,能够实现输出层和随机扰动层之间的互相学习,进而增强深度卷积神经网络预处理鲁棒性。
具体举例说明如下:
假定输出层的输出为fc1,随机扰动层输出为fc2,那么输出层的输出和随机扰动层的输出之间相关损失函数定义为:
||fc1-fc2||
基于此,对全部类型的预处理方式而言,输出层和随机扰动层之间的整体相关损失函数、即第一损失函数B则可表示为:
Figure BDA0001934693520000081
其中,wrt表示第t种预处理方式对应的权重。
S14-获取第二损失函数:
根据S12中确定的各种预处理方式分别对应的权重、所述输出层的输出以及图像数据对应的数据标签确定预处理方式的交叉熵损失函数,该预处理方式的交叉熵损失函数即为第二损失函数。通过预处理方式种类的增加来确定第二损失函数,能够使得所述卷积神经网络实现向标签的学习。
具体举例说明如下:
原卷积神经网络的损失函数为单预处理交叉熵损失函数:
cross_entropy(fc1,label)
其中,cross_entropy表示交叉熵损失函数,label表示数据标签,在此基础上,本申请实施例采用加权多预处理交叉熵损失函数、即第二损失函数为:
Figure BDA0001934693520000082
其中,k表示第k种预处理方式,wpk表示这种预处理方式对应的权重,这是一种自身的训练学习过程,每种预处理方式直接向真实标签学习。
S15-获取第三损失函数:
根据所述输出层的输出、S12中确定的不同的所述预处理方式之间的权重确定两个不同的所述预处理方式之间的相关损失函数,该两个不同的所述预处理方式之间的相关损失函数即为第三损失函数。通过随机扰动层的增加和第一损失函数的确定,能够实现输出层和随机扰动层之间的互相学习,进而增强卷积神经网络预处理鲁棒性。通过预处理方式种类的增加来确定第三损失函数,能够使得所述卷积神经网络的不同预处理方式之间进行互相学习。
具体举例说明如下:
定义两种不同预处理间的相关损失函数为:
Figure BDA0001934693520000091
其中,i表示第i种预处理方式,j表示第j种预处理方式,对所有预处理的损失函数、即第三损失函数为:
Figure BDA0001934693520000092
其中,wfij表示第i种和第j种预处理方式之间的相关损失函数所对应的权重。
S16-获取卷积神经网络的目标函数:
根据S13中获取的第一损失函数、S14中获取的第二损失函数以及S15中获取的第三损失函数确定所述卷积神经网络的目标函数。即,在原卷积神经网络的损失函数的基础上,定义随机扰动层和原网络最后一层之间的相关损失函数,并加入原损失函数中;而后将单预处理损失函数改进成多预处理加权损失函数,并定义不同预处理网络输出最后一层之间的相关损失函数,最终把以上三个失函数加权作为最终的损失函数。
具体举例说明如下:
模型整体的损失函数即最后一层输出和扰动层输出之间的相关损失函数,多预处理损失函数以及不同预处理间的相关损失函数的加和,且最终的优化目标是使得上式损失函数最小,这样可保证在随机干扰下和不同预处理下,模型的输出之间变化最小,从而保证模型的鲁棒性,基于此,所述卷积神经网络的目标函数minC=B+C+D,即:
Figure BDA0001934693520000093
基于上述内容,本申请实施例中的卷积神经网络的目标结构及目标函数均已确认,而后应用下述步骤继续该卷积神经网络进行模型训练。
S17-获取训练数据:
自历史图像数据库或客户端设备等中获取多个图像数据,且这些图像数据各自均附加有对应的识别结果标签。
S18-预处理训练数据:
根据多种预处理方式对多个所述图像数据进行预处理。
可以理解的是,所述预处理方式至少可以包含有Caffe对应的开源计算机视觉库opencv和Pytorch对应的图像处理标准库PIL。
另外,还可以将预处理后的训练数据进行存储,形成一历史数据文件D1后可以输出该历史数据文件D1。
S19-模型训练:
应用S11确定的卷积神经网络目标结构、S16获取的卷积神经网络的目标函数以及S18获取的预处理后的训练数据,训练得到卷积神经网络。该训练过程能够使训练出的卷积神经网络模型具有随机鲁棒性和预处理鲁棒性。
本申请的上述实施例可概述为在随机扰动和预处理扰动下的学习策略,每一种随机初始化和每一种预处理既包含自身向标签学习的过程,也包含了学习另一种随机初始化和预处理的学习过程。具体包括:A、在原网络结构上,额外增加一个网络层,该层和原网络最后一层结构相同,位置上和原网络最后一层并行,初始权重随机产生,和原网络最后一层不同,后文称该层为随机扰动层;B、在原网络损失函数的基础上,定义随机扰动层和原网络最后一层之间的相关损失函数,并加入原损失函数中;C、网络每次前向输入多种预处理的结果;D、损失函数由单预处理损失函数改进成多预处理加权损失函数,定义不同预处理网络输出最后一层之间的相关损失函数,最终把以上损失函数加权作为最终的损失函数。
另外,还可以生成训练得到的卷积神经网络所对应的预卷积神经网络模型文件D2,并可以输出该卷积神经网络模型文件D2。
(二)在线状态下应用卷积神经网络进行图像识别
为了能够更加提高应用卷积神经网络进行图像识别的准确性,本实施例提供一种应用所述服务器101和客户端设备102进行数据交互来在线应用卷积神经网络进行图像识别的方式,系统在线部分包含有S21到S24共计4个处理步骤,根据预先训练好的卷积神经网络对图像进行识别。参见图6,具体包括如下内容:
S21-获取预测数据:
客户端设备获取目标图像数据。
S22-预处理预测数据:
根据实际应用的深度学习框架,在多种预处理方式中选取该深度学习框架对应的预处理方式对所述目标图像数据进行预处理。
S23-图像识别:
将预处理后的目标图像数据作为预测样本,输入应用S19训练得到的卷积神经网络中,使得所述卷积神经网络输出该目标图像数据对应的识别结果。
S24-输出识别结果:
输出目标图像数据对应的图像识别结果,使得用户及时获知该识别结果。
本申请的上述实施例通过获取目标图像数据,获取目标图像数据的预处理结果,通过预设的卷积神经网络,确定预处理后的目标图像数据的识别结果,即通过应用鲁棒性提高后的卷积神经网络来进行图像识别,在卷积神经网络对应的深度学习库发生变化时,也能够保证输出结果的准确性,进而能够提高应用卷积神经网络进行图像识别的准确性。
(三)农作物识别
基于上述离线状态下建立卷积神经网络和在线状态下应用卷积神经网络进行图像识别的应用场景,本申请还提供一种具体应用实例,在该应用实例中,所述卷积神经网络用于进行农作物识别,参见图7,具体内容如下:
S31-增加随机扰动层:
在用于进行农作物图像识别的卷积神经网络通用结构中增加一与输出层结构相同且位置并行的随机扰动层,得到卷积神经网络目标结构,其中的所述随机扰动层的初始权重随机产生。
S32-确定多种预处理方式:
确定针对农作物图像的预处理方式的多种类型,以及各类预处理方式分别对应的权重。具体为根据当前卷积神经网络的实际应用场景,选取至少两种预处理方式。例如:应用Caffe框架下的开源计算机视觉库opencv来进行预处理,也应用Pytorch框架下的图像处理标准库PIL来做预处理。
S33-确定第一损失函数:
根据针对农作物图像数据的各种预处理方式分别对应的权重、所述输出层的输出以及所述随机扰动层的输出确定输出层和随机扰动层之间的相关损失函数,该输出层和随机扰动层之间的相关损失函数即为第一损失函数。
S34-获取第二损失函数:
根据S32中确定的针对农作物图像的各种预处理方式分别对应的权重、所述输出层的输出以及图像数据对应的数据标签确定预处理方式的交叉熵损失函数,该预处理方式的交叉熵损失函数即为第二损失函数。
S35-获取第三损失函数:
根据所述输出层的输出、S32中确定的针对农作物图像数据的不同的所述预处理方式之间的权重确定两个不同的所述预处理方式之间的相关损失函数,该两个不同的所述预处理方式之间的相关损失函数即为第三损失函数。
S36-获取用于进行农作物识别的卷积神经网络的目标函数:
根据S33中获取的第一损失函数、S34中获取的第二损失函数以及S35中获取的第三损失函数确定所述用于进行农作物识别的卷积神经网络的目标函数。
S37-获取农作物训练数据:
自历史农作物图像数据库或客户端设备等中获取多个农作物图像数据,且这些农作物图像数据各自均附加有对应的识别结果标签。
可以理解的是,所述农作物图像数据的识别结果可以为其所处的生长周期。
S38-预处理农作物训练数据:
根据针对农作物图像的多种预处理方式对多个所述农作物图像数据进行预处理。
S39-模型训练:
应用S31确定的卷积神经网络目标结构、S36获取的卷积神经网络的目标函数以及S38获取的预处理后的训练用农作物图像数据,训练得到用于进行农作物识别的卷积神经网络。
S310-模型验证:
(1)采用第一种预处理方式对农作物的验证图像数据进行预处理,应用原卷积神经网络通用结构及一种经单一预处理方式得到的训练集训练得到的原卷积神经网络,对农作物的验证图像数据进行识别。
(2)采用第二种预处理方式对相同的农作物的验证图像数据进行预处理,并经单一预处理方式得到的训练集训练得到的原卷积神经网络再次对相同的农作物的验证图像数据进行识别。
(3)采用第一种预处理方式对农作物的验证图像数据进行预处理,应用S39中得到的用于进行农作物识别的卷积神经网络对农作物的验证图像数据进行识别。
(4)采用第二种预处理方式对农作物的验证图像数据进行预处理,应用S39中得到的用于进行农作物识别的卷积神经网络对农作物的验证图像数据进行识别。
(5)比较上述(1)至(4)的识别结果,进而可知当前用于进行农作物识别的卷积神经网络相对于原卷积神经网络的鲁棒性更好,更加能够保证模型输出的农作物图像识别结果的准确性。
举例来说,若农作物为玉米,且识别结果为玉米的生长周期,则S39得到的即为用于根据玉米图像进行玉米生成周期识别的卷积神经网络。基于此,上述(1)至(5)的具体过程举例为:
选取一个时段的玉米地图像,分别应用PIL库和opencv库对该玉米地图像数据进行预处理,分别得到两个预处理后的玉米地图像数据,而后分别将该两个预处理后的玉米地图像数据输入应用原卷积神经网络通用结构及一种经单一预处理方式得到的训练集训练得到的原卷积神经网络,得到该时段的玉米地图像对应的生长周期识别结果。然后,分别应用PIL库和opencv库对该玉米地图像数据进行预处理,分别得到两个预处理后的玉米地图像数据,而后分别将该两个预处理后的玉米地图像数据输入S39中得到的用于进行玉米生长周期识别的卷积神经网络,分别得到该时段的玉米地图像对应的生长周期识别结果。上述四个识别结果如图8所示,横轴表示不同的玉米生长周期类别,纵轴表示模型输出的置信度数值,a1为应用PIL库对该玉米地图像数据进行预处理后输入原卷积神经网后得到的识别结果,a2为应用opencv库对该玉米地图像数据进行预处理后输入原卷积神经网后得到的识别结果;a3为应用opencv库对该玉米地图像数据进行预处理后输入S39中得到的用于进行玉米生长周期识别的卷积神经网络后得到的识别结果,a4为应用PIL库对该玉米地图像数据进行预处理后输入S39中得到的用于进行玉米生长周期识别的卷积神经网络后得到的识别结果。
另外,为了更进一步验证S39中得到的用于进行玉米生长周期识别的卷积神经网络,更新选取另一个时段的玉米地图像,并重复上述验证过程,得到的四个识别结果如图9所示,b1为应用PIL库对该玉米地图像数据进行预处理后输入原卷积神经网后得到的识别结果,b2为应用opencv库对该玉米地图像数据进行预处理后输入原卷积神经网后得到的识别结果;b3为应用opencv库对该玉米地图像数据进行预处理后输入S39中得到的用于进行玉米生长周期识别的卷积神经网络后得到的识别结果,b4为应用PIL库对该玉米地图像数据进行预处理后输入S39中得到的用于进行玉米生长周期识别的卷积神经网络后得到的识别结果。
从图8及图9可以看出,在原始模型结果及训练方式下,对应用不同的预处理方式得到的目标图像进行识别后,虽然能够大概率保证最大峰值的位置一致,但整体结果上具有产生较大偏差,而应用S39中得到的用于进行玉米生长周期识别的卷积神经网络,即使针对应用不同的预处理方式得到的目标图像进行识别,也能有效提高卷积神经网络的预处理鲁棒性,进而即使在卷积神经网络对应的深度学习库发生变化时,也能够提高输出结果的准确性,即能够提高应用卷积神经网络进行图像识别的准确性。
S311-获取农作物预测数据:
客户端设备获取待识别的农作物图像数据。
S312-预处理农作物预测数据:
根据实际应用的深度学习框架,在多种预处理方式中选取该深度学习框架对应的预处理方式对所述目标图像数据进行预处理。
S313-农作物图像识别:
将预处理后的农作物图像数据作为预测样本,输入应用S39训练得到的卷积神经网络中,使得所述卷积神经网络输出该农作物图像数据对应的生长周期类别的识别结果。
S313-输出生长周期类别的识别结果:
输出农作物图像数据对应的生长周期类别的识别结果,使得用户及时获知农作物当前所处的生长周期类别。
对于终端而言,为了能够在卷积神经网络对应的深度学习库发生变化时,也能够提高输出结果的准确性,即能够提高应用卷积神经网络进行图像识别的准确性,参见图10,提供了一种图像识别方法,可以包括如下步骤:
步骤1001:获取目标图像数据。
步骤1002:获取目标图像数据的预处理结果。
步骤1003:通过预设的卷积神经网络,确定预处理后的目标图像数据的识别结果,其中,所述卷积神经网络根据应用多种预处理方式预处理后的多个所述图像数据训练得到。
从上述描述可知,本申请实施例提供的图像识别方法,能够有效提高卷积神经网络的鲁棒性,即使在卷积神经网络对应的深度学习库发生变化时,也能够提高输出结果的准确性,即能够提高应用卷积神经网络进行图像识别的准确性。
为了能够有效提高卷积神经网络的鲁棒性,进而能够进一步提高应用卷积神经网络进行图像识别的准确性,参见图11,提供了一种图像识别方法中的卷积神经网络的构建过程,可以包括如下步骤:
步骤1101:获取多个图像数据。
可以理解的是,所述图像数据的数量根据实际训练需要进行设置,本实施例对此不作限定。
步骤1102:根据多种预处理方式对多个所述图像数据进行预处理。
可以理解的是,所述预处理方式的种类根据模型实际应用需要或可能所属的深度学习框架的限制来选取,例如PIL库及opencv库。
步骤1103:应用多个预处理后的图像数据,训练得到用于图像识别的卷积神经网络。
从上述描述可知,本申请实施例提供的图像识别方法,通过获取多个图像数据,根据多种预处理方式对多个所述图像数据进行预处理,应用多个预处理后的图像数据,训练得到用于图像识别的卷积神经网络,即通过多种类型的预处理数据对卷积神经网络进行模型训练,能够有效提高卷积神经网络的鲁棒性,即使在卷积神经网络对应的深度学习库发生变化时,也能够保证输出结果的准确性,即能够提高应用卷积神经网络进行图像识别的准确性。
其中,为了在应用多种预处理方式对模型的训练方式进行改进的基础上,进一步提高卷积神经网络的鲁棒性,考虑由于属于同一网络结构家族的网络都有着相近的鲁棒性,这就意味着相比于网络的大小,网络结构对于鲁棒性的影响更大,因此选择改变卷积神经网络的结构来提高卷积神经网络的鲁棒性。基于此,所述图像识别方法中的所述卷积神经网络的最后一层中除输出层外,还包含有与该输出层结构相同且位置并行的随机扰动层,且该随机扰动层的初始权重随机产生。另外,为了在应用多种预处理方式对模型的训练方式进行改进的基础上,进一步提高卷积神经网络的鲁棒性,考虑由于属于同一网络结构家族的网络都有着相近的鲁棒性,这就意味着相比于网络的大小,网络结构对于鲁棒性的影响更大,因此选择改变卷积神经网络的结构来提高卷积神经网络的鲁棒性。基于此,在步骤1101之前,参见图12,所述图像识别方法包含有步骤1201和1202,具体包含有如下内容:
步骤1201:在卷积神经网络通用结构中增加一与输出层结构相同且位置并行的随机扰动层,得到卷积神经网络目标结构,其中所述随机扰动层的初始权重随机产生。
步骤1202:确定所述卷积神经网络目标结构对应的目标函数。
在步骤1202中,所述确定该卷积神经网络目标结构对应的目标函数的具体内容如下:
(1)确定所述预处理方式的多种类型。
(2)根据所述卷积神经网络目标结构及所述预处理方式的多种类型,确定所述卷积神经网络目标结构对应的目标函数。
可以理解的是,所述卷积神经网络的目标函数为第一损失函数、第二损失函数和第三损失函数的加和结果中的最小值;
其中,所述第一损失函数为所述输出层和随机扰动层之间的相关损失函数;
所述第二损失函数为所述预处理方式的交叉熵损失函数;
所述第三损失函数为两个不同的所述预处理方式之间的相关损失函数。
在软件层面,还提供了一种图像识别装置,该图像识别装置可以为前述的客户端设备102,也可以为前述的服务器设备101,参见图13,所述图像识别装置可以包括:预测数据获取模块1301、预处理结果获取模块1302和识别结果获取模块1303,其中:
预测数据获取模块1301,用于获取目标图像数据。
预处理结果获取模块1302,用于获取目标图像数据的预处理结果。
识别结果获取模块1303,用于通过预设的卷积神经网络,确定预处理后的目标图像数据的识别结果,其中,所述卷积神经网络根据应用多种预处理方式预处理后的多个所述图像数据训练得到。
本申请提供的图像识别装置的实施例具体可以用于执行上述实施例中的图像识别方法的实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
从上述描述可知,本申请实施例提供的图像识别装置,能够有效提高卷积神经网络的鲁棒性,即使在卷积神经网络对应的深度学习库发生变化时,也能够提高输出结果的准确性,即能够提高应用卷积神经网络进行图像识别的准确性。
另外,为了在应用多种预处理方式对模型的训练方式进行改进的基础上,进一步提高卷积神经网络的鲁棒性,考虑由于属于同一网络结构家族的网络都有着相近的鲁棒性,这就意味着相比于网络的大小,网络结构对于鲁棒性的影响更大,因此选择改变卷积神经网络的结构来提高卷积神经网络的鲁棒性。基于此,所述图像识别装置中的所述卷积神经网络的最后一层中除输出层外,还包含有与该输出层结构相同且位置并行的随机扰动层,且该随机扰动层的初始权重随机产生。以及,所述卷积神经网络的目标函数为第一损失函数、第二损失函数和第三损失函数的加和结果中的最小值;其中,所述第一损失函数为所述输出层和随机扰动层之间的相关损失函数;所述第二损失函数为所述预处理方式的交叉熵损失函数;所述第三损失函数为两个不同的所述预处理方式之间的相关损失函数。
为了能够有效提高卷积神经网络的鲁棒性,进而能够进一步提高应用卷积神经网络进行图像识别的准确性,参见图14,所述图像识别装置可以包括:训练数据获取模块1401、训练数据预处理模块1402和模型训练模块1403,其中:
训练数据获取模块1401,用于获取多个图像数据。
训练数据预处理模块1402,用于根据多种预处理方式对多个所述图像数据进行预处理。
模型训练模块1403,用于应用多个预处理后的图像数据,训练得到用于图像识别的卷积神经网络。
本申请提供的图像识别装置的实施例具体可以用于执行上述实施例中的图像识别方法的实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
从上述描述可知,本申请实施例提供的图像识别装置,通过训练数据获取模块获取多个图像数据,训练数据预处理模块根据多种预处理方式对多个所述图像数据进行预处理,模型训练模块应用多个预处理后的图像数据,训练得到用于图像识别的卷积神经网络,即通过多种类型的预处理数据对卷积神经网络进行模型训练,能够有效提高卷积神经网络的鲁棒性,即使在卷积神经网络对应的深度学习库发生变化时,也能够保证输出结果的准确性,即能够提高应用卷积神经网络进行图像识别的准确性。
另外,为了在应用多种预处理方式对模型的训练方式进行改进的基础上,进一步提高卷积神经网络的鲁棒性,考虑由于属于同一网络结构家族的网络都有着相近的鲁棒性,这就意味着相比于网络的大小,网络结构对于鲁棒性的影响更大,因此选择改变卷积神经网络的结构来提高卷积神经网络的鲁棒性。基于此,所述图像识别装置还包含有模型建立模块1501和目标函数确定模块1502,参见图15,具体包含有如下内容:
模型建立模块1501,用于在卷积神经网络通用结构中增加一与输出层结构相同且位置并行的随机扰动层,得到卷积神经网络目标结构,其中所述随机扰动层的初始权重随机产生。
目标函数确定模块1502,用于确定所述卷积神经网络目标结构对应的目标函数。
所述目标函数确定模块1502具体内容如下:
预处理方式确定单元,用于确定所述预处理方式的多种类型。
目标函数构建单元,用于根据所述卷积神经网络目标结构及所述预处理方式的多种类型,确定所述卷积神经网络目标结构对应的目标函数。
其中,所述卷积神经网络的目标函数为第一损失函数、第二损失函数和第三损失函数的加和结果中的最小值;其中,所述第一损失函数为所述输出层和随机扰动层之间的相关损失函数;所述第二损失函数为所述预处理方式的交叉熵损失函数;所述第三损失函数为两个不同的所述预处理方式之间的相关损失函数。
本申请上述所提供的方法实施例可以在客户端设备102、服务器设备101、计算机集群或者类似的运算装置中执行。以运行在服务器上为例,图16是本发明实施例的一种图像识别方法的服务器的硬件结构框图。如图16所示,服务器设备101可以包括一个或多个(图中仅示出一个)处理器1020(处理器1020可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器1040、以及用于通信功能的传输模块1060。本领域普通技术人员可以理解,图16所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,服务器设备101还可包括比图16中所示更多或者更少的组件,或者具有与图16所示不同的配置。
存储器1040可用于存储应用软件的软件程序以及模块,如本发明实施例中的图像识别方法对应的程序指令/模块,处理器1020通过运行存储在存储器1040内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的应用程序的图像识别方法。存储器1040可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1040可进一步包括相对于处理器1020远程设置的存储器,这些远程存储器可以通过网络连接至服务器设备101。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输模块1060用于经由一个网络接收或者发送数据。上述的网络具体实例可包括服务器设备101的通信供应商提供的无线网络。在一个实例中,传输模块1060包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输模块1060可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
基于前述图像识别的内容,本申请实施例还提供一种电子设备,包括显示屏、处理器以及存储处理器可执行指令的存储器。所述的显示屏可以包括触摸屏、液晶显示器、投影设备等显示信息内容的设备。所述的电子设备类型可以包括移动终端、专用车险设备、车机交互设备、个人电脑等。所述处理器执行所述指令时可以实现所述图像识别方法的全部或部分内容,例如,所述处理器执行所述指令时可以实现如下内容:
步骤1001:获取目标图像数据。
步骤1002:获取目标图像数据的预处理结果。
步骤1003:通过预设的卷积神经网络,确定预处理后的目标图像数据的识别结果,其中,所述卷积神经网络根据应用多种预处理方式预处理后的多个所述图像数据训练得到。
从上述描述可知,本申请的实施例提供的电子设备,能够有效提高卷积神经网络的鲁棒性,即使在卷积神经网络对应的深度学习库发生变化时,也能够提高输出结果的准确性,即能够提高应用卷积神经网络进行图像识别的准确性。
基于前述图像识别的内容,本申请的实施例还提供能够实现上述图像识别方法实施例中的全部或部分步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的图像识别方法的全部,例如,所述处理器执行所述计算机程序时实现下述步骤:
步骤1001:获取目标图像数据。
步骤1002:获取目标图像数据的预处理结果。
步骤1003:通过预设的卷积神经网络,确定预处理后的目标图像数据的识别结果,其中,所述卷积神经网络根据应用多种预处理方式预处理后的多个所述图像数据训练得到。
从上述描述可知,本申请的实施例提供的计算机可读存储介质,能够有效提高卷积神经网络的鲁棒性,即使在卷积神经网络对应的深度学习库发生变化时,也能够提高输出结果的准确性,即能够提高应用卷积神经网络进行图像识别的准确性。
本申请中上述方法的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。相关之处参见方法实施例的部分说明即可。
上述的指令可以存储在多种计算机可读存储介质中。所述计算机可读存储介质可以包括用于存储信息的物理装置,可以将信息数字化后再以利用电、磁或者光学等方式的媒体加以存储。本实施例所述的计算机可读存储介质有可以包括:利用电能方式存储信息的装置如,各式存储器,如RAM、ROM等;利用磁能方式存储信息的装置如,硬盘、软盘、磁带、磁芯存储器、磁泡存储器、U盘;利用光学方式存储信息的装置如,CD或DVD。当然,还有其他方式的可读存储介质,例如量子存储器、石墨烯存储器等等。下述所述的装置或服务器或客户端或系统中的指令同上描述。
虽然本申请提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
上述实施例阐明的装置或模块,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。为了描述的方便,描述以上装置时以功能分为各种模块分别描述。在实施本申请时可以把各模块的功能在同一个或多个软件和/或硬件中实现。当然,也可以将实现某功能的模块由多个子模块或子单元组合实现。
本申请中所述的方法、装置或模块可以以计算机可读程序代码方式实现控制器按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内部包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
本申请所述装置中的部分模块可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构、类等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的硬件的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,也可以通过数据迁移的实施过程中体现出来。该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,移动终端,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。本申请的全部或者部分可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、移动通信终端、多处理器系统、基于微处理器的系统、可编程的电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
虽然通过实施例描绘了本申请,本领域普通技术人员知道,本申请有许多变形和变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的精神。

Claims (10)

1.一种图像识别方法,包括:
获取目标图像数据;
获取目标图像数据的预处理结果;
通过预设的卷积神经网络,确定预处理后的目标图像数据的识别结果,其中,所述卷积神经网络根据应用多种预处理方式预处理后的多个所述图像数据训练得到。
2.根据权利要求1所述的图像识别方法,所述卷积神经网络的最后一层中除输出层外,还包含有与该输出层结构相同且位置并行的随机扰动层,且该随机扰动层的初始权重随机产生。
3.根据权利要求1所述的图像识别方法,在所述获取目标图像数据之前,还包括:
获取多个图像数据;
根据多种预处理方式对多个所述图像数据进行预处理;
应用多个预处理后的图像数据,训练得到所述卷积神经网络。
4.根据权利要求3所述的图像识别方法,在所述训练得到所述卷积神经网络之前,还包括:
在卷积神经网络通用结构中增加一与输出层结构相同且位置并行的随机扰动层,得到卷积神经网络目标结构,其中所述随机扰动层的初始权重随机产生;
确定所述卷积神经网络目标结构对应的目标函数。
5.根据权利要求4所述的图像识别方法,所述确定该卷积神经网络目标结构对应的目标函数,包括:
确定所述预处理方式的多种类型;
根据所述卷积神经网络目标结构及所述预处理方式的多种类型,确定所述卷积神经网络目标结构对应的目标函数。
6.根据权利要求5所述的图像识别方法,所述卷积神经网络的目标函数为第一损失函数、第二损失函数和第三损失函数的加和结果中的最小值;
其中,所述第一损失函数为所述输出层和随机扰动层之间的相关损失函数;
所述第二损失函数为所述预处理方式的交叉熵损失函数;
所述第三损失函数为两个不同的所述预处理方式之间的相关损失函数。
7.一种终端设备,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现权利要求1至6中任一项所述的图像识别方法的步骤。
8.一种服务器,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现权利要求1至6中任一项所述的图像识别方法的步骤。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1至6任一项所述的图像识别方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现权利要求1至6任一项所述的图像识别方法的步骤。
CN201910003905.7A 2019-01-03 2019-01-03 图像识别方法及装置 Active CN111401396B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910003905.7A CN111401396B (zh) 2019-01-03 2019-01-03 图像识别方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910003905.7A CN111401396B (zh) 2019-01-03 2019-01-03 图像识别方法及装置

Publications (2)

Publication Number Publication Date
CN111401396A true CN111401396A (zh) 2020-07-10
CN111401396B CN111401396B (zh) 2023-04-18

Family

ID=71428320

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910003905.7A Active CN111401396B (zh) 2019-01-03 2019-01-03 图像识别方法及装置

Country Status (1)

Country Link
CN (1) CN111401396B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112364675A (zh) * 2020-10-28 2021-02-12 三维码(厦门)网络科技有限公司 一种基于三维码和图像识别的离线识读方法及装置
CN112784494A (zh) * 2021-01-27 2021-05-11 中国科学院苏州生物医学工程技术研究所 假阳性识别模型的训练方法、目标识别方法及装置
CN113033659A (zh) * 2021-03-24 2021-06-25 北京百度网讯科技有限公司 图像识别模型的训练与图像识别的方法、装置
CN114187598A (zh) * 2020-08-25 2022-03-15 合肥本源量子计算科技有限责任公司 手写数字识别方法、系统、设备及计算机可读存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103544506A (zh) * 2013-10-12 2014-01-29 Tcl集团股份有限公司 一种基于卷积神经网络的图像分类方法和装置
CN106650786A (zh) * 2016-11-14 2017-05-10 沈阳工业大学 基于多列卷积神经网络模糊评判的图像识别方法
CN108038517A (zh) * 2018-01-02 2018-05-15 东北农业大学 基于改进卷积神经网络模型Cifar10的玉米叶片病害识别方法
CN108052977A (zh) * 2017-12-15 2018-05-18 福建师范大学 基于轻量级神经网络的乳腺钼靶图像深度学习分类方法
CN108154238A (zh) * 2017-12-25 2018-06-12 东软集团股份有限公司 机器学习流程的迁移方法、装置、存储介质和电子设备
CN108416440A (zh) * 2018-03-20 2018-08-17 上海未来伙伴机器人有限公司 一种神经网络的训练方法、物体识别方法及装置
WO2018153319A1 (zh) * 2017-02-23 2018-08-30 北京市商汤科技开发有限公司 物体检测方法、神经网络的训练方法、装置和电子设备
WO2018157862A1 (zh) * 2017-03-02 2018-09-07 腾讯科技(深圳)有限公司 车型的识别方法和装置、存储介质、电子装置
WO2018217635A1 (en) * 2017-05-20 2018-11-29 Google Llc Application development platform and software development kits that provide comprehensive machine learning services
CN108920259A (zh) * 2018-03-30 2018-11-30 华为技术有限公司 深度学习作业调度方法、系统和相关设备

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103544506A (zh) * 2013-10-12 2014-01-29 Tcl集团股份有限公司 一种基于卷积神经网络的图像分类方法和装置
CN106650786A (zh) * 2016-11-14 2017-05-10 沈阳工业大学 基于多列卷积神经网络模糊评判的图像识别方法
WO2018153319A1 (zh) * 2017-02-23 2018-08-30 北京市商汤科技开发有限公司 物体检测方法、神经网络的训练方法、装置和电子设备
WO2018157862A1 (zh) * 2017-03-02 2018-09-07 腾讯科技(深圳)有限公司 车型的识别方法和装置、存储介质、电子装置
WO2018217635A1 (en) * 2017-05-20 2018-11-29 Google Llc Application development platform and software development kits that provide comprehensive machine learning services
CN108052977A (zh) * 2017-12-15 2018-05-18 福建师范大学 基于轻量级神经网络的乳腺钼靶图像深度学习分类方法
CN108154238A (zh) * 2017-12-25 2018-06-12 东软集团股份有限公司 机器学习流程的迁移方法、装置、存储介质和电子设备
CN108038517A (zh) * 2018-01-02 2018-05-15 东北农业大学 基于改进卷积神经网络模型Cifar10的玉米叶片病害识别方法
CN108416440A (zh) * 2018-03-20 2018-08-17 上海未来伙伴机器人有限公司 一种神经网络的训练方法、物体识别方法及装置
CN108920259A (zh) * 2018-03-30 2018-11-30 华为技术有限公司 深度学习作业调度方法、系统和相关设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SOTOUDEH M 等: "DeepThin: A Self-Compressing Library for Deep Neural Networks" *
高友文 等: "基于数据增强的卷积神经网络图像识别研究" *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114187598A (zh) * 2020-08-25 2022-03-15 合肥本源量子计算科技有限责任公司 手写数字识别方法、系统、设备及计算机可读存储介质
CN114187598B (zh) * 2020-08-25 2024-02-09 本源量子计算科技(合肥)股份有限公司 手写数字识别方法、设备及计算机可读存储介质
CN112364675A (zh) * 2020-10-28 2021-02-12 三维码(厦门)网络科技有限公司 一种基于三维码和图像识别的离线识读方法及装置
CN112784494A (zh) * 2021-01-27 2021-05-11 中国科学院苏州生物医学工程技术研究所 假阳性识别模型的训练方法、目标识别方法及装置
CN112784494B (zh) * 2021-01-27 2024-02-06 中国科学院苏州生物医学工程技术研究所 假阳性识别模型的训练方法、目标识别方法及装置
CN113033659A (zh) * 2021-03-24 2021-06-25 北京百度网讯科技有限公司 图像识别模型的训练与图像识别的方法、装置

Also Published As

Publication number Publication date
CN111401396B (zh) 2023-04-18

Similar Documents

Publication Publication Date Title
CN111401396B (zh) 图像识别方法及装置
CN109104620B (zh) 一种短视频推荐方法、装置和可读介质
CN111783870B (zh) 人体属性的识别方法、装置、设备及存储介质
US8463025B2 (en) Distributed artificial intelligence services on a cell phone
CN110210513B (zh) 数据分类方法、装置及终端设备
US10204286B2 (en) Self-organizing discrete recurrent network digital image codec
AU2020385264B2 (en) Fusing multimodal data using recurrent neural networks
CN111582185B (zh) 用于识别图像的方法和装置
KR20200145827A (ko) 얼굴 특징 추출 모델 학습 방법, 얼굴 특징 추출 방법, 장치, 디바이스 및 저장 매체
US10599975B2 (en) Scalable parameter encoding of artificial neural networks obtained via an evolutionary process
WO2019082165A1 (en) GENERATION OF NEURAL NETWORKS WITH COMPRESSED REPRESENTATION HAVING A HIGH DEGREE OF PRECISION
CN110674688A (zh) 用于视频监控场景的人脸识别模型获取方法、系统和介质
CN112232325B (zh) 样本数据处理方法和装置、存储介质及电子设备
CN114331829A (zh) 一种对抗样本生成方法、装置、设备以及可读存储介质
CN112906721B (zh) 图像处理方法、装置、设备及计算机可读存储介质
CN111126347B (zh) 人眼状态识别方法、装置、终端及可读存储介质
CN114529765B (zh) 一种数据处理方法、设备以及计算机可读存储介质
CN112308006A (zh) 视线区域预测模型生成方法、装置、存储介质及电子设备
CN113191478A (zh) 神经网络模型的训练方法、装置和系统
CN110909578A (zh) 一种低分辨率图像识别方法、装置和存储介质
CN114662006B (zh) 端云协同推荐系统、方法以及电子设备
CN115577768A (zh) 半监督模型训练方法和装置
CN114550313A (zh) 图像处理方法、神经网络及其训练方法、设备和介质
CN113642635A (zh) 模型训练方法及装置、电子设备和介质
CN112597828A (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