图像处理方法和信息处理设备与流程

文档序号:23979520发布日期:2021-02-20 07:40阅读:128来源:国知局
图像处理方法和信息处理设备与流程

[0001]
本公开总体上涉及图像处理领域,具体而言,涉及用于识别图像中所包含的文本的图像处理方法以及能够实现该图像处理方法的信息处理设备。


背景技术:

[0002]
对于图像中的文本进行识别、包括手写字符识别(ocr)一直是计算机视觉领域的一个研究课题。
[0003]
目前,基于英文字符的研究工作大多与深度卷积神经网络(dcnn)有关。这些研究工作将例如手写字符的文本识别视为一个图像分类问题,并为每个英文单词分配一个类标签(总共约9万个单词),这是一种有大量类别的大规模训练模型。因为这种单词的序列的基本组合数量可以超过100万,因此很难推广到其他字符类型,如中文文本、日文文本等。因此,基于dcnn的英文字符系统不能直接用于基于图像的文本序列识别。如果将这样的英文字符系统转用到中文字符序列识别,需要大量人工设计以进行重新设计和训练。
[0004]
为此,需要提供一种能够利用更易获得的、适合于各种字符识别(例如中文字符识别)的模型来识别图像中所包含的文本的方法。


技术实现要素:

[0005]
在下文中给出了关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,这个概述并不是关于本发明的穷举性概述。它并不是意图确定本发明的关键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
[0006]
鉴于以上对于利用更易获得的模型来识别图像中所包含的文本的方法的需求,本发明的目的之一是提供一种图像处理方法以及能够实现该图像处理方法的信息处理设备,其能够利用通过搜索以及端对端训练的方式获得的彼此连接的卷积神经网络(cnn)和循环神经网络(rnn)进行文本识别。
[0007]
根据本公开的一个方面,提供了一种图像处理方法,该图像处理方法包括:将包含文本的待处理图像输入到用于字符识别的卷积神经网络模型,以提取文本特征;将所提取的文本特征输入到与卷积神经网络模型连接的、用于语义识别的循环神经网络模型,以识别待处理图像中的文本,其中,卷积神经网络模型和循环神经网络模型是通过基于彼此连接的、具有待定层的初始卷积神经网络模型以及具有待定层的初始循环神经网络模型,在预定义的候选模型空间中针对每个待定层进行搜索并以端到端的方式对彼此连接的卷积神经网络模型和循环神经网络模型进行联合训练而获得的。
[0008]
根据本公开的另一方面,提供了一种信息处理设备,其包括处理器,所述处理器被配置为:将包含文本的待处理图像输入到用于字符识别的卷积神经网络模型,以提取文本特征;将所提取的文本特征输入到与卷积神经网络模型连接的、用于语义识别的循环神经网络模型,以识别待处理图像中的文本,其中,卷积神经网络模型和循环神经网络模型是通
过基于彼此连接的、具有待定层的初始卷积神经网络模型以及具有待定层的初始循环神经网络模型,在预定义的候选模型空间中针对每个待定层进行搜索并以端到端的方式对彼此连接的卷积神经网络模型和循环神经网络模型进行联合训练而获得的。
[0009]
依据本公开的其它方面,还提供了一种使得计算机实现如上所述的图像处理方法的程序。
[0010]
依据本公开的又一方面,还提供了相应的存储介质,其存储有机器可读取的指令代码,所述指令代码在由机器读取并执行时,能够使得机器执行上述图像处理方法。
[0011]
上述根据本公开实施例的各个方面,至少能够获得以下益处:在对待处理图像中的文本进行识别时,利用了通过搜索以及端对端训练的方式获得的彼此连接的cnn模型和rnn模型,该模型在前期的模型构建中减少了人工干预,从而降低了获得模型的成本。
[0012]
通过以下结合附图对本公开的最佳实施例的详细说明,本公开的这些以及其他优点将更加明显。
附图说明
[0013]
本公开可以通过参考下文中结合附图所给出的描述而得到更好的理解,其中在所有附图中使用了相同或相似的附图标记来表示相同或者相似的部件。所述附图连同下面的详细说明一起包含在本说明书中并且形成本说明书的一部分,而且用来进一步举例说明本公开的优选实施例和解释本公开的原理和优点。其中:
[0014]
图1是示意性地示出根据本公开实施例的图像处理方法的一个示例流程的流程图。
[0015]
图2是用于说明图1的图像处理方法中使用的彼此连接的cnn模型和rnn模型的一般架构的说明图。
[0016]
图3是用于说明图2的模型架构的具体结构的说明图。
[0017]
图4是用于说明图3中的cnn模型中的一个待定层的示意图。
[0018]
图5是用于说明图3中的rnn模型中的一个待定层的示意图。
[0019]
图6是示意性地示出用于获得图1的图像处理方法中使用的彼此连接的cnn模型和rnn模型的示例处理的流程图。
[0020]
图7是示意性地示出根据本公开实施例的图像处理装置的一个示例结构的示意性框图。
[0021]
图8是示出了可用来实现根据本公开实施例的图像处理方法和装置的一种可能的硬件配置的结构简图。
具体实施方式
[0022]
在下文中将结合附图对本发明的示范性实施例进行描述。为了清楚和简明起见,在说明书中并未描述实际实施方式的所有特征。然而,应该了解,在开发任何这种实际实施例的过程中必须做出很多特定于实施方式的决定,以便实现开发人员的具体目标,例如,符合与系统及业务相关的那些限制条件,并且这些限制条件可能会随着实施方式的不同而有所改变。此外,还应该了解,虽然开发工作有可能是非常复杂和费时的,但对得益于本公开内容的本领域技术人员来说,这种开发工作仅仅是例行的任务。
[0023]
在此,还需要说明的一点是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的装置结构和/或处理步骤,而省略了与本发明关系不大的其他细节。
[0024]
根据本公开的一个方面,提供了一种图像处理方法。下面将参照图1描述根据本公开实施例的图像处理方法的一个示例流程。
[0025]
图1是示意性地示出根据本公开实施例的图像处理方法的一个示例流程的流程图。如图1所示,图像处理方法的示例流程100可以包括:步骤s101,将包含文本的待处理图像输入到用于字符识别的卷积神经网络(cnn)模型,以提取文本特征;步骤s103,将所提取的文本特征输入到与卷积神经网络模型连接的、用于语义识别的循环神经网络(rnn)模型,以识别待处理图像中的文本。
[0026]
这里,在步骤s101中使用的卷积神经网络(cnn)模型和在步骤s103中使用的循环神经网络(rnn)模型是通过基于彼此连接的、具有待定层的初始卷积神经网络模型以及具有待定层的初始循环神经网络模型,在预定义的候选模型空间中针对每个待定层进行搜索并以端到端的方式对彼此连接的卷积神经网络模型和循环神经网络模型进行联合训练而获得的。
[0027]
例如通过上述搜索和联合训练方式获得的彼此连接的cnn模型和rnn模型以及可选的转录层(例如联接时间分类(ctc)层)一起构成了整体的卷积循环神经网络(crnn)模型。目前,基于crnn的模型在图像中的文本或字符序列识别的工作中日益获得更多的关注。相较于标准的dcnn模型,crnn模型的优势包括使用更少的参数,占用更少的存储空间等。然而,由于现有的crnn模型中的cnn部分均是人工精心设计的,因此,通常需要大量的先验知识和前期准备。
[0028]
相较之下,在本实施例的图像处理方法中,利用了经由在预定义的候选模型空间中进行搜索以及端对端训练而获得的彼此连接的cnn模型和rnn模型所构成的crnn模型,该模型显著减少了人工干预,从而减低了应用其进行文本识别的开发及人力成本。
[0029]
在一个优选实施例中,可以通过以表示正确识别文本的概率的损失函数以及卷积神经网络模型和循环神经网络模型的整体复杂度最小化为优化目标进行搜索和联合训练,获得优化后的卷积神经网络模型和循环神经网络模型。后文中将会在描述彼此连接的cnn模型和rnn模型的架构之后,结合具体示例描述上述优化目标的设置的示例以及搜索和联合训练的示例。
[0030]
通过以优化正确识别文本的概率以及模型的整体复杂度这种多目标优化的方式进行搜索和联合训练,本优选实施例的图像处理方法中所采用的模型可以兼顾识别准确性以及模型的规模或计算量。特别地,相较于一般仅考虑识别准确性的识别模型,本实施例中使用的具有优化的整体复杂度的模型架构的计算量或规模较小,从而特别适用于移动平台和资源受限的环境。
[0031]
接下来,将参照图2至图5更具体地描述图1的示例方法中所应用的彼此连接的cnn模型和rnn模型的结构以及用于获得该模型架构的候选模型空间和搜索操作。
[0032]
首先参照图2,图2是用于说明图1的图像处理方法中使用的彼此连接的cnn模型和rnn模型的一般架构的说明图。如图2所示,图1的示例方法中所使用的crnn整体模型20可以包括依次连接的cnn模型21、rnn模型22、以及优选的ctc层23。在现有技术中,已经存在将具
有例如图2所示的形式的整体crnn模型应用于图像中的文本识别的方法。例如,本领域技术人员可以参照baoguang shi等人于2017年11月在ieee transactions on pattern analysis&machine intelligence上发布的文章“an end-to-end trainable neural network for image-based sequence recognition and its application to scene text recognition”,以了解这样的crnn模型的一般原理、结构以及具体实现的细节。因此,以下仅出于便于后续描述的目的,简要地描述该整体模型的一般原理和结构。
[0033]
在图2的示例的crnn整体模型20中,cnn模型21可以具有一般卷积神经网络的基本结构,例如可以包括多个卷积层和池化层等,但其不具有全连接层。cnn模型21用于特征提取,其可以根据例如包含文本“subway”的输入图像生成特征图,并根据所生成的特征图得到适合于作为循环神经网络的输入的特征序列,以将该特征序列输入到rnn模型22。由于cnn模型21提取的特征序列能够表征待处理图像中的文本,因此本文中有时也将该特征序列称为“文本特征”。
[0034]
基于从cnn模型21输入的特征序列(即上述“文本特征”),rnn模型22进行文本序列识别并输出预测结果。rnn模型22输出的预测结果可以是其输入的特征序列中的每一个特征向量的标签分布,即,真实结果的概率列表。rnn模型22的输出结果可能包含噪音,即,与不正确的空格或重复字符等相对应的标签分布。为便于理解,在图2的示例中,示出了与rnn模型22输出的序列标签分布所对应的、包含噪音的字符序列,即“ssubbwwayy”。为了消除这样的噪音,在rnn模型22之后设置了用作转录层的ctc层23,以通过去重整合等操作,将rnn模型22的预测转换为最终的标签序列。如图2所示,在ctc层23的处理之后,可以得到去除了噪声的文本序列识别结果,例如“subway”(即,与该标签序列对应的概率分布)。
[0035]
在概要了解了如图2所示的包括依次连接的cnn模型21、rnn模型22、以及ctc层23的crnn整体模型20之后,接下来,将参照图3至图5描述该整体模型的具体结构以及用于获得该具体结构的候选模型空间和搜索操作。
[0036]
首先参照图3,图3是用于说明图2所示的crnn整体模型的具体结构的说明图。如图3所示,crnn整体模型可以包括依次连接的cnn模型21、rnn模型22、以及优选的ctc层23,其中,cnn模型21的第1层至第n层以无阴影的实线框表示,rnn模型22的第1层至第l层以有阴影的实线框表示,ctc层23以虚线框表示。这里,n和l均是预先确定的自然数,分别表示cnn模型21和rnn模型22中的相应层数。
[0037]
在一个示例中,针对图像中的字符序列的识别应用,可以设置cnn模型的层数n=12以及rnn模型的层数l=2的初始网络架构。在本公开内容的基础上,本领域技术人员可以基于系统要求如复杂度和精度、处理负荷、计算速度等各种因素通过实验来合理地预先设置n和l的具体取值,在此不再赘述。此外,可以根据应用需求设置整体网络架构的其他必要参数,例如与具体应用或数据集相关的cnn模型的第一层的通道数以及最后一层的通道数等(中间层的通道数可通过计算自动获取),以构建初始的cnn模型21和初始的rnn模型22。在本公开内容的基础上,本领域技术人员可以基于系统要求等因素通过实验来合理地预先设置整体网络架构的必要参数,在此不再赘述。
[0038]
在本实施例中,cnn模型21中的第1层至第n层以及rnn模型22中的第1层至第l层可以都是待定层。换言之,针对如图3所示的crnn整体模型,例如可以通过搜索以及从整个模型架构的输入层(即cnn模型21的第1层)到整个模型架构的输出层(例如ctc层23)的端对端
训练,确定cnn模型21中的每个层和rnn模型22中的每个层的操作或结构。替选地,可以预先确定cnn模型21和rnn模型22中的若干层的操作或结构,并将其余层作为通过搜索确定操作或结构的待定层。不同于cnn模型21或rnn模型22,ctc层23的结构可以是预先根据先验知识或实验等方式人工确定的。
[0039]
在一个优选实施例中,预定义的候选模型空间针对卷积神经网络模型的一个待定层可以包括多个候选卷积操作和候选池化操作,并且针对卷积神经网络模型的一个待定层,可以通过在多个候选卷积操作和候选池化操作当中进行搜索和联合训练确定该层的操作。
[0040]
作为示例,针对如图3所示的cnn模型21中的一个待定层,候选卷积操作可以包括空洞卷积操作。空洞卷积(dilated convolutions)也可以称为扩张卷积,其中利用空洞填充扩大卷积核的大小,以获得更大的视野或感受野,从而有利于保留图像内部的数据结构。举例而言,可以使用空洞3*3卷积、空洞5*5卷积等作为候选卷积操作。
[0041]
作为示例,针对如图3所示的cnn模型21中的一个待定层,候选池化操作可以包括1*n池化操作,其中,n为大于等于2的预定自然数。使用矩形窗口的1*n池化操作的目的是使cnn模型21的输出适合文本序列长且窄的特点。因此,在cnn模型21的待定层中,当执行池化操作时,优选使用矩形窗口而非传统的方形窗口,以便使映射的特征宽度更小,从而保证最终的特征序列是长且窄的,以匹配后续的rnn模型22的文本序列识别。举例而言,可以使用1*2最大池化或平均池化、1*3最大池化或平均池化等作为候选池化操作。
[0042]
在一个示例中,预定义的候选模型空间中针对如图2所示的cnn模型21的一个待定层所包括的多个候选卷积操作和候选池化操作可以包括:不同类型和/或不同尺寸的候选卷积操作,以及/或者不同类型和/或不同尺寸的候选池化操作。作为示例,上述候选卷积操作可以包括传统的3*3卷积、传统的5*5卷积、可分离的3*3卷积、可分离的5*5卷积、空洞3*3卷积、空洞5*5卷积等操作;上述候选池化操作可以包括1*2最大池化、1*2平均池化、1*3最大池化、1*3平均池化等操作。
[0043]
在一个优选实施例中,在初始设置的卷积神经网络模型中,一个待定层的输入和输出即可以各自与用于实现1*1卷积操作的附加卷积层相连接(换言之,该附加卷积层是预先设置的,而非通过搜索确定的)。与残差网络中在卷积层前后分别应用1*1卷积操作类似,本优选实施例中,利用分别与待定层的输入和输出连接的用于实现1*1卷积操作的附加卷积层,可以使待定层的输入和输出的通道数都减小,从而有利于减少参数数量进而减小模型的复杂度。
[0044]
可选地,在一个示例中,用于实现1*1卷积操作的附加卷积层可以通过非线性激活函数与待定层连接,以利于增加网络的非线性特性。图4示出了图3的cnn模型21中的一个待定层的示例(例如,cnn模型21中的第i层,i=1,2,3,

n),该待定层201的输入和输出各自经由批规范化层(bn)和非线性激活函数(relu)与用于实现1*1卷积操作的附加卷积层202a和202b相连接。
[0045]
在一个优选实施例中,针对卷积神经网络模型的一个待定层,除了以上描述的多个候选卷积操作和候选池化操作之外,预定义的候选模型空间还可以相应地包括:该层到卷积神经网络模型中的各个后续待定层的候选连接,并且,针对卷积神经网络模型的一个待定层,可以通过在所述候选连接当中进行搜索和联合训练确定该层到卷积神经网络模型
中的后续待定层的至少一个连接。
[0046]
图3的示例中示意性地示出了cnn模型21中第1层和第2层到后续待定层的候选连接作为示例。针对cnn模型21中作为当前待定层的第i层(i=1,2,3,

,n-2),除了一般保留该层到cnn模型21中的第i+1层的连接之外,还通过搜索和联合训练确定该层到cnn模型21中的第i+2层、第i+3层、
……
第n层的各个候选连接是否应保留。通过保留适当的候选连接,可以在cnn模型的处理能力与处理负荷之间取得良好平衡。
[0047]
以上参照图3和图4描述了卷积神经网络模型的具体结构以及在预定义的候选模型空间中针对卷积神经网络模型的待定层进行的搜索。下面返回参照图3,并结合图5描述循环神经网络模型的具体结构以及在预定义的候选模型空间中针对循环神经网络模型的待定层进行的搜索。
[0048]
如图3所示,rnn模型22可以包括l个待定层,可以通过搜索和联合训练确定这个l层中的每个层的结构和优化参数。
[0049]
在一个优选实施例中,初始的循环神经网络模型针对每个待定层可以具有预定数目的节点,预定义的候选模型空间针对循环神经网络模型的每个待定层包括多个候选激活函数,其中,针对循环神经网络模型的每个待定层,通过在多个候选激活函数当中进行搜索和联合训练确定该层中的各个节点的激活函数,并且确定各个节点之间的连接关系。
[0050]
图5是用于说明图3中的rnn模型中的一个待定层的示意图,其示出了rnn模型中的一个待定层的可能结构。如图5所示,在该待定层中,设置了节点1至节点6共6个节点。针对每个节点k,设置了多个候选激活函数,例如可以包括tanh(正切)函数、relu函数、identity(恒等)函数和sigmoid函数,并且设置了从节点k到节点k+1、节点k+2

节点6(k=1,2,

,6)等各个后续节点的候选连接。通过搜索和联合训练,可以确定每个节点的激活函数以及各个节点之间的连接关系。换言之,通过搜索和联合训练,可以确定每个节点k的激活函数,并确定在图5的示意图中所示出的全部连接关系中保留哪些连接关系。
[0051]
注意,由于循环神经网络在各个层一般使用相同结构,因此,当针对rnn模型22的待定层进行以上参照图5描述的搜索和/或训练时,可以针对rnn模型22的每个层搜索相同结构并使用相同参数。
[0052]
以上参照图3至图5描述了包括彼此连接的卷积神经网络模型和循环神经网络模型的整体模型的具体结构示例以及用于获得该整体模型的搜索操作的示例。结合该示例,将进一步参照图6描述实现搜索以及端对端训练以获得优化模型的一个处理示例。
[0053]
图6示出了用于获得优化模型的处理的示例流程600。如图6所示,示例流程600可以包括:步骤s601,针对具有待定层的初始卷积神经网络模型以及具有待定层的初始循环神经网络模型,在预定义的候选模型空间中针对每个待定层进行搜索以获得彼此连接的卷积神经网络模型和循环神经网络模型的整体优选架构;以及步骤s603,针对彼此连接的卷积神经网络模型和循环神经网络模型的整体优选架构,通过端到端的联合训练获得的该整体优选架构的优化参数。
[0054]
在示例流程600中,通过步骤s601和步骤s603分别实现整体模型的结构的优化和具体参数的优化。注意,通过分别优化模型架构以及最优架构下的模型参数,示例流程600可以简化处理。然而,在本公开内容的基础上,本领域技术人员可以理解,在具有足够运算能力的情况下,理论上,可以同时实现模型架构以及模型参数的优化。因此,在本申请的上
下文中,“通过搜索和联合训练”确定的待定层的具体操作、结构和/或连接实际上可以是通过步骤s601中的处理实现的,并且其相应的优化参数可以是通过在后续的步骤s603中的处理获得的。
[0055]
优选地,步骤s601中的整体模型结构的优化以及步骤s603中的参数的优化可以通过统一的标准来实现。即,步骤s601和步骤s603可以均以表示正确识别文本的概率的损失函数以及卷积神经网络模型和循环神经网络模型的整体复杂度最小化为优化目标来执行各自的处理。
[0056]
作为示例,在步骤s601的搜索处理中,可以针对如图3所示的cnn模型21中的每个层在多个候选卷积操作和候选池化操作中搜索该层的操作并可选地搜索该层到cnn模型21中各个后续待定层的候选连接中的至少一个连接、同时针对如图3所示的rnn模型22中的每个待定层在多个候选激活函数当中搜索该层中的各个节点的激活函数并搜索确定各个节点之间的连接关系。
[0057]
针对通过上述搜索得到的彼此连接的cnn模型21和rnn模型22的每一个可能的整体结构(例如图3所示的整体crnn结构),可以在该结构的初始或随机参数值下,计算表示该整体结构正确识别文本的概率的损失函数以及卷积神经网络模型和循环神经网络模型的整体复杂度。换言之,在步骤s601中的搜索优选结构的处理中,针对每个可能的整体结构,并不变化其参数值,而是使用例如随机确定的初始参数值。可以计算通过搜索获得的、彼此连接的cnn模型21和rnn模型22的所有可能的整体结构中的每个整体结构的上述损失函数和整体复杂度,并选择两者均满足预设要求的结构,作为在步骤s601中确定的整体模型的优选架构。
[0058]
例如,可以预先设置整体复杂度阈值,并且在整体复杂度小于该阈值的可能结构中选择正确识别文本的概率的损失函数表现得最优的那个可能结构,作为在步骤s601中确定的整体模型的优选架构。替选地,也可以直接构建同时表征上述损失函数和整体复杂度的整体优化函数,并通过求解该优化函数来确定整体模型的优选架构。
[0059]
作为示例,在给定了标注好真实标签的含有文本序列的输入图像的情况下,对于具有如图3所示的基本架构的整体模型m,可以利用图3的ctc层23输出正确序列标签的概率,构建诸如ctc层23的输出的损失函数,作为表征该整体模型正确识别文本的概率的损失函数loss(m),如以下公式(1)所示。
[0060]
loss(m)=-lnπ
(x,z)∈s
p(z|x)
……
公式(1)
[0061]
其中,p(z|x)代表给定输入x,输出序列z的概率,s为训练集。公式(1)的损失函数是对给定样本后输出正确标签的概率的乘积再取负对数,该损失函数越小,则例如图3所示的整体模型正确识别文本序列的概率越高。
[0062]
另外,可以利用各种现有方式,计算基于cnn模型21、rnn模型22、ctc层23构成的整体模型m的整体复杂度。举例而言,在本示例中,由于cnn模型21的卷积操作的计算量主导了整个模型m的计算量,因此,可以以cnn模型21中的卷积操作的计算量flop(m)来表征整体模型m的整体复杂度。
[0063]
作为示例,如果cnn模型21中的第i个卷积层的输入通道的个数为c
in
、输出通道的个数为c
out
、卷积尺度为w*w(w为自然数)、特征图尺寸为h*w(h、w为自然数),则该卷积层的计算量为:
[0064]
flop
i
=h
×
w
×
c
out
×
(w
×
w
×
c
in
+1)
……
公式(2)
[0065]
如果相关卷积层的卷积操作为可分离卷积,则该卷积层的计算量修改为以下公式(2’):
[0066]
flop

i
=(h
×
w
×
c
in
+c
in
×
c
out
)
×
w
×
w
……
公式(2’)
[0067]
可以基于以上述公式(2)或(2’)获得的每个卷积层的计算量,对全部卷积层的计算量求和,以获得整体模型m的整体复杂度flop(m)。
[0068][0069]
在一个示例中,可以基于以上述方式获得的损失函数loss(m)和整体复杂度flop(m),构建如以下公式(4)的整体优化函数:
[0070][0071]
在公式(4)中,flop0和ω是根据具体应用而预先设置的常数。在一个示例中,flop0可以设定为整体模型的预期复杂度的目标值,ω可以设定为0.07。
[0072]
优选地,可以通过强化学习方法,以例如公式(4)形式的整体优化函数获得最小值为目标,通过针对例如图3所示的cnn模型21中的每个待定层以及rnn模型22中的每个待定层进行迭代地搜索而确定最优的整体模型架构。在本公开内容的描述的基础上,对于诸如以上公式(4)形式的整体优化函数,本领域技术人员可以通过各种现有的优化方式如强化学习等,确定该整体优化函数的最优解,从而确定优化的整体模型架构。
[0073]
在上述优选实施例中,取代仅表示预测正确性的准确率,使用了表征整体模型正确识别文本的概率的损失函数作为优化目标的一部分,从而有利于通过强化学习来确定更好的体系结构。另外,采用了基于计算量的整体复杂度而非与平台的推理时间作为优化目标的另一部分,从而使得优化过程不受到应用该模型的平台的影响,并且有利于将在一个平台上学习的模型迁移到其他平台。
[0074]
当然,在本公开内容中已经给出上述优选实施例的基础上,本领域技术人员可以理解,取决于具体的应用或任务,可以利用表示预测正确性的准确率acc(m)取代表示正确识别文本的概率的损失函数loss(m),和/或利用整体模型的延迟时间t(m)取代卷积神经网络模型和循环神经网络模型的整体复杂度flop(m),从而构建不同的整体优化函数或优化目标。作为示例,替选地,可以获得下述公式(4’)形式的整体优化函数:
[0075][0076]
在公式(4’)中,t0和ω是根据具体应用而预先设置的常数。在一个示例中,t0可以设定为整体模型的预期延迟时间的目标值,ω可以设定为0.07。
[0077]
在一个替选的优化方式中,可以不使用上述公式(4)或(4’)形式的整体优化函数,而直接以例如公式(2)形式的损失函数作为第一优化目标并以例如公式(3)形式的整体复杂度作为第二优化目标,利用诸如pareto(帕累托)最优解算法等用于求解多目标优化问题的方式,来确定两个优化目标的最优解,从而确定优化的整体架构。在本公开内容的基础上,在给出了两个优化目标的具体设置的情况下,本领域技术人员可以采用各种求解多目标优化问题的方式来确定最优解,在此不再展开描述。
[0078]
以上描述了步骤s601中执行的用于优化整体模型架构的处理。在通过步骤s601中的处理获得整体模型的优化架构之后,在步骤s603中,可以利用相同的优化函数或优化目标,针对该优化架构通过端对端的联合训练实现模型的具体参数的优化。
[0079]
具体地,例如,以公式(4)形式的整体优化函数获得最小值为目标,针对已经确定了每个待定层的操作和连接的cnn模型21以及已经确定了每个待定层的结构的rnn模型22(连同与rnn模型22连接的优选的ctc层23),以端对端的方式对整个模型进行联合训练,获得整个模型中的各个参数的最优值。在已经确定了模型架构并给出了整体优化函数的情况下,本领域技术人员可以通过各种现有方式实现上述训练过程,在此不再展开描述。
[0080]
以上参照图6的流程图,结合图3至图5中示出的示例,描述了获得例如图1所示的图像处理方法中所使用的整体模型架构的示例处理。利用图6所示的示例处理,能够在减少人工干预的情况下获得具有良好性能的模型架构。并且,由于是通过搜索而非完全的人工设计获得模型的优化架构,因此,可以容易地针对不同的任务和/或数据集获得相应的优化模型。即,该方法获得的模型容易转移到不同的任务和/或数据集。
[0081]
此外,通过以优化正确识别文本的概率以及优化模型的整体复杂度这种多目标优化的方式进行搜索和联合训练,图6的示例处理所获得的模型可以兼顾识别准确性以及模型的规模或计算量。特别地,相较于一般仅考虑识别准确性的识别模型,这里获得的同时具有优化的整体复杂度的模型的计算量或规模较小,从而特别适用于移动平台和资源受限的环境。
[0082]
根据根本公开的另一方面,提供了一种图像处理设备。图7是示意性地示出根据本公开实施例的图像处理装置的一个示例结构的示意性框图。
[0083]
如图7所示,图像处理装置700可以包括:特征提取单元701,用于将包含文本的待处理图像输入到用于字符识别的卷积神经网络(cnn)模型,以提取文本特征;文本识别单元702,用于将所提取的文本特征输入到与卷积神经网络模型连接的、用于语义识别的循环神经网络(rnn)模型,以识别待处理图像中的文本。
[0084]
这里,在特征提取单元701中使用的卷积神经网络(cnn)模型和在文本识别单元702中使用的循环神经网络(rnn)模型是通过基于彼此连接的、具有待定层的初始卷积神经网络模型以及具有待定层的初始循环神经网络模型,在预定义的候选模型空间中针对每个待定层进行搜索并以端到端的方式对彼此连接的卷积神经网络模型和循环神经网络模型进行联合训练而获得的。
[0085]
上述图像处理装置及其各个单元例如可以进行以上参照图1描述的图像处理方法及其各个步骤的操作和/或处理并实现类似的效果,在此不再进行重复说明。此外,上述图像处理装置所使用的cnn模型和rnn模型可以通过以上参照图6描述的用于优化模型架构的示例处理而获得。
[0086]
根据根本公开的又一方面,提供了一种信息处理设备。该信息处理设备可以实现根据本公开实施例的图像处理方法,其可以包括处理器,该处理器被配置为:将包含文本的待处理图像输入到用于字符识别的卷积神经网络模型,以提取文本特征;将所提取的文本特征输入到与卷积神经网络模型连接的、用于语义识别的循环神经网络模型,以识别待处理图像中的文本,其中,卷积神经网络模型和循环神经网络模型是通过基于彼此连接的、具有待定层的初始卷积神经网络模型以及具有待定层的初始循环神经网络模型,在预定义的
候选模型空间中针对每个待定层进行搜索并以端到端的方式对彼此连接的卷积神经网络模型和循环神经网络模型进行联合训练而获得的。
[0087]
信息处理设备的处理器例如可以被配置为进行以上参照图1描述的图像处理方法及其各个步骤的操作和/或处理并实现类似的效果,在此不再进行重复说明。此外,处理器所使用的cnn模型和rnn模型可以通过以上参照图图6描述的用于优化模型架构的示例处理而获得。
[0088]
可选地,处理器可以进一步被配置为:通过以表示正确识别文本的概率的损失函数以及卷积神经网络模型和循环神经网络模型的整体复杂度最小化为优化目标进行搜索和联合训练,获得优化后的卷积神经网络模型和循环神经网络模型。
[0089]
作为示例,预定义的候选模型空间针对卷积神经网络模型的一个待定层可以包括多个候选卷积操作和候选池化操作,并且处理器可以进一步被配置为:针对卷积神经网络模型的一个待定层,通过在多个候选卷积操作和候选池化操作当中进行搜索和联合训练确定该层的操作。
[0090]
作为示例,预定义的候选模型空间针对卷积神经网络模型的一个待定层还可以包括该层到卷积神经网络模型中的各个后续待定层的候选连接,并且处理器可以进一步被配置为:针对卷积神经网络模型的一个待定层,通过在所述候选连接当中进行搜索和联合训练确定该层到卷积神经网络模型中的后续待定层的至少一个连接。
[0091]
可选地,在卷积神经网络模型中,一个待定层的输入和输出各自与用于实现1*1卷积操作的附加卷积层相连接。
[0092]
可选地,候选卷积操作包括空洞卷积操作。
[0093]
可选地,候选池化操作包括1*n池化操作,其中,n为大于等于2的预定自然数。
[0094]
可选地,多个候选卷积操作和候选池化操作包括:不同类型和/或不同尺寸的候选卷积操作,以及/或者不同类型和/或不同尺寸的候选池化操作。
[0095]
作为示例,初始循环神经网络模型针对每个待定层具有预定数目的节点,其中,预定义的候选模型空间针对循环神经网络模型的每个待定层包括多个候选激活函数,并且处理器可以进一步被配置为:针对循环神经网络模型的每个待定层,通过在多个候选激活函数当中进行搜索和联合训练确定该层中的各个节点的激活函数,并且确定各个节点之间的连接关系。
[0096]
图8是示出了可用来实现根据本公开实施例的信号处理方法和设备以及信息处理设备的一种可能的硬件配置800的结构简图。
[0097]
在图8中,中央处理单元(cpu)801根据只读存储器(rom)802中存储的程序或从存储部分808加载到随机存取存储器(ram)803的程序执行各种处理。在ram 803中,还根据需要存储当cpu 801执行各种处理等等时所需的数据。cpu 801、rom 802和ram 803经由总线804彼此连接。输入/输出接口805也连接到总线804。
[0098]
下述部件也连接到输入/输出接口805:输入部分806(包括键盘、鼠标等等)、输出部分807(包括显示器,例如阴极射线管(crt)、液晶显示器(lcd)等,和扬声器等)、存储部分808(包括硬盘等)、通信部分809(包括网络接口卡例如lan卡、调制解调器等)。通信部分809经由网络例如因特网执行通信处理。根据需要,驱动器810也可连接到输入/输出接口805。可拆卸介质811例如磁盘、光盘、磁光盘、半导体存储器等等可以根据需要被安装在驱动器
810上,使得从中读出的计算机程序可根据需要被安装到存储部分808中。
[0099]
此外,本公开还提出了一种存储有机器可读取的指令代码的程序产品。上述指令代码由机器读取并执行时,可执行上述根据本公开实施例的图像处理方法。相应地,用于承载这种程序产品的例如磁盘、光盘、磁光盘、半导体存储器等的各种存储介质也包括在本公开的公开中。
[0100]
即,本公开还提出了一种存储介质,其存储有机器可读取的指令代码,所述指令代码在由机器读取并执行时,能够使得机器执行上述根据本公开实施例的图像处理方法。
[0101]
上述存储介质例如可以包括但不限于磁盘、光盘、磁光盘、半导体存储器等。
[0102]
在上面对本公开具体实施例的描述中,针对一种实施方式描述和/或示出的特征可以以相同或类似的方式在一个或更多个其它实施方式中使用,与其它实施方式中的特征相组合,或替代其它实施方式中的特征。
[0103]
此外,本公开的各实施例的方法不限于按照说明书中描述的或者附图中示出的时间顺序来执行,也可以按照其他的时间顺序、并行地或独立地执行。因此,本说明书中描述的方法的执行顺序不对本公开的技术范围构成限制。
[0104]
此外,显然,根据本公开的上述方法的各个操作过程也可以以存储在各种机器可读的存储介质中的计算机可执行程序的方式实现。
[0105]
而且,本公开的目的也可以通过下述方式实现:将存储有上述可执行程序代码的存储介质直接或者间接地提供给系统或设备,并且该系统或设备中的计算机或者中央处理单元(cpu)读出并执行上述程序代码。
[0106]
此时,只要该系统或者设备具有执行程序的功能,则本公开的实施方式不局限于程序,并且该程序也可以是任意的形式,例如,目标程序、解释器执行的程序或者提供给操作系统的脚本程序等。
[0107]
上述这些机器可读存储介质包括但不限于:各种存储器和存储单元,半导体设备,磁盘单元例如光、磁和磁光盘,以及其它适于存储信息的介质等。
[0108]
另外,客户信息处理终端通过连接到因特网上的相应网站,并且将依据本公开的计算机程序代码下载和安装到信息处理终端中然后执行该程序,也可以实现本公开的各实施例。
[0109]
综上,根据本公开实施例,本公开提供了如下方案,但不限于此:
[0110]
方案1.一种图像处理方法,包括:
[0111]
将包含文本的待处理图像输入到用于字符识别的卷积神经网络模型,以提取文本特征;
[0112]
将所提取的文本特征输入到与卷积神经网络模型连接的、用于语义识别的循环神经网络模型,以识别待处理图像中的文本,
[0113]
其中,卷积神经网络模型和循环神经网络模型是通过基于彼此连接的、具有待定层的初始卷积神经网络模型以及具有待定层的初始循环神经网络模型,在预定义的候选模型空间中针对每个待定层进行搜索并以端到端的方式对彼此连接的卷积神经网络模型和循环神经网络模型进行联合训练而获得的。
[0114]
方案2.如方案1所述的图像处理方法,其中,通过以表示正确识别文本的概率的损失函数以及卷积神经网络模型和循环神经网络模型的整体复杂度最小化为优化目标进行
搜索和联合训练,获得优化后的卷积神经网络模型和循环神经网络模型。
[0115]
方案3.如方案1或2所述的图像处理方法,其中,预定义的候选模型空间针对卷积神经网络模型的一个待定层包括:多个候选卷积操作和候选池化操作,以及
[0116]
针对卷积神经网络模型的一个待定层,通过在多个候选卷积操作和候选池化操作当中进行搜索和联合训练确定该层的操作。
[0117]
方案4.如方案3所述的图像处理方法,其中,
[0118]
预定义的候选模型空间针对卷积神经网络模型的一个待定层还包括:该层到卷积神经网络模型中的各个后续待定层的候选连接,以及
[0119]
针对卷积神经网络模型的一个待定层,通过在所述候选连接当中进行搜索和联合训练确定该层到卷积神经网络模型中的后续待定层的至少一个连接。
[0120]
方案5.如方案3或4所述的图像处理方法,其中,在卷积神经网络模型中,一个待定层的输入和输出各自与用于实现1*1卷积操作的附加卷积层相连接。
[0121]
方案6.如方案3所述的图像处理方法,其中,
[0122]
候选卷积操作包括空洞卷积操作,以及/或者
[0123]
候选池化操作包括1*n池化操作,其中,n为大于等于2的预定自然数。
[0124]
方案7.如方案3所述的图像处理方法,其中,多个候选卷积操作和候选池化操作包括:
[0125]
不同类型和/或不同尺寸的候选卷积操作,以及/或者
[0126]
不同类型和/或不同尺寸的候选池化操作。
[0127]
方案8.如方案1或2所述的图像处理方法,其中,初始循环神经网络模型针对每个待定层具有预定数目的节点,
[0128]
其中,预定义的候选模型空间针对循环神经网络模型的每个待定层包括多个候选激活函数,以及
[0129]
其中,针对循环神经网络模型的每个待定层,通过在多个候选激活函数当中进行搜索和联合训练确定该层中的各个节点的激活函数,并且确定各个节点之间的连接关系。
[0130]
方案9.一种信息处理设备,包括:
[0131]
处理器,被配置为:
[0132]
将包含文本的待处理图像输入到用于字符识别的卷积神经网络模型,以提取文本特征;
[0133]
将所提取的文本特征输入到与卷积神经网络模型连接的、用于语义识别的循环神经网络模型,以识别待处理图像中的文本,
[0134]
其中,卷积神经网络模型和循环神经网络模型是通过基于彼此连接的、具有待定层的初始卷积神经网络模型以及具有待定层的初始循环神经网络模型,在预定义的候选模型空间中针对每个待定层进行搜索并以端到端的方式对彼此连接的卷积神经网络模型和循环神经网络模型进行联合训练而获得的。
[0135]
方案10.如方案9所述的信息处理设备,其中,处理器还被配置为:通过以表示正确识别文本的概率的损失函数以及卷积神经网络模型和循环神经网络模型的整体复杂度最小化为优化目标进行搜索和联合训练,获得优化后的卷积神经网络模型和循环神经网络模型。
[0136]
方案11.如方案9或10所述的信息处理设备,其中,预定义的候选模型空间针对卷积神经网络模型的一个待定层包括:多个候选卷积操作和候选池化操作,以及
[0137]
处理器还被配置为:针对卷积神经网络模型的一个待定层,通过在多个候选卷积操作和候选池化操作当中进行搜索和联合训练确定该层的操作。
[0138]
方案12.如方案11所述的信息处理设备,其中,
[0139]
预定义的候选模型空间针对卷积神经网络模型的一个待定层还包括:该层到卷积神经网络模型中的各个后续待定层的候选连接,以及
[0140]
处理器还被配置为:针对卷积神经网络模型的一个待定层,通过在所述候选连接当中进行搜索和联合训练确定该层到卷积神经网络模型中的后续待定层的至少一个连接。
[0141]
方案13.如方案11或12所述的信息处理设备,其中,在卷积神经网络模型中,一个待定层的输入和输出各自与用于实现1*1卷积操作的附加卷积层相连接。
[0142]
方案14.如方案11所述的信息处理设备,其中,
[0143]
候选卷积操作包括空洞卷积操作,以及/或者
[0144]
候选池化操作包括1*n池化操作,其中,n为大于等于2的预定自然数。
[0145]
方案15.如方案11所述的信息处理设备,其中,多个候选卷积操作和候选池化操作包括:
[0146]
不同类型和/或不同尺寸的候选卷积操作,以及/或者
[0147]
不同类型和/或不同尺寸的候选池化操作。
[0148]
方案16.如方案9或10所述的信息处理设备,其中,初始循环神经网络模型针对每个待定层具有预定数目的节点,
[0149]
其中,预定义的候选模型空间针对循环神经网络模型的每个待定层包括多个候选激活函数,以及
[0150]
其中,处理器还被配置为:针对循环神经网络模型的每个待定层,通过在多个候选激活函数当中进行搜索和联合训练确定该层中的各个节点的激活函数,并且确定各个节点之间的连接关系。
[0151]
方案17.一种存储介质,其存储有机器可读取的指令代码,所述指令代码在由机器读取并执行时,能够使得机器执行一种图像处理方法,所述图像处理方法包括:
[0152]
将包含文本的待处理图像输入到用于字符识别的卷积神经网络模型,以提取文本特征;
[0153]
将所提取的文本特征输入到与卷积神经网络模型连接的、用于语义识别的循环神经网络模型,以识别待处理图像中的文本,
[0154]
其中,卷积神经网络模型和循环神经网络模型是通过基于彼此连接的、具有待定层的初始卷积神经网络模型以及具有待定层的初始循环神经网络模型,在预定义的候选模型空间中针对每个待定层进行搜索并以端到端的方式对彼此连接的卷积神经网络模型和循环神经网络模型进行联合训练而获得的。
[0155]
最后,还需要说明的是,在本公开中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备可能不仅
包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0156]
尽管上面已经通过本公开的具体实施例的描述对本公开进行了披露,但是,应该理解,本领域技术人员可在所附权利要求的精神和范围内设计对本公开的各种修改、改进或者等同物。这些修改、改进或者等同物也应当被认为包括在本公开所要求保护的范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1