CN110349229B - 一种图像描述方法及装置 - Google Patents
一种图像描述方法及装置 Download PDFInfo
- Publication number
- CN110349229B CN110349229B CN201910617308.3A CN201910617308A CN110349229B CN 110349229 B CN110349229 B CN 110349229B CN 201910617308 A CN201910617308 A CN 201910617308A CN 110349229 B CN110349229 B CN 110349229B
- Authority
- CN
- China
- Prior art keywords
- layer
- global
- image
- target
- decoder
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000001514 detection method Methods 0.000 claims abstract description 32
- 238000010606 normalization Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 16
- 230000015654 memory Effects 0.000 claims description 9
- 238000000605 extraction Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000004422 calculation algorithm Methods 0.000 description 19
- 238000011176 pooling Methods 0.000 description 14
- 238000013527 convolutional neural network Methods 0.000 description 12
- 230000007246 mechanism Effects 0.000 description 12
- 238000012549 training Methods 0.000 description 10
- 238000013528 artificial neural network Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 7
- 230000000007 visual effect Effects 0.000 description 7
- 230000009471 action Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 238000013519 translation Methods 0.000 description 5
- 238000003860 storage Methods 0.000 description 4
- 210000004027 cell Anatomy 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000008034 disappearance Effects 0.000 description 2
- 230000005284 excitation Effects 0.000 description 2
- 238000004880 explosion Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 230000006403 short-term memory Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000011946 reduction process Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000002087 whitening effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/002—Image coding using neural networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本说明书实施例公开了一种图像描述方法及装置,包括将获取的图像的全局图像信息输入至全局编码器组,并获得图像的全局特征信息;将所述全局特征信息和获取的目标检测信息输入至目标编码器组,并获得目标特征信息;将所述全局特征信息、所述目标特征信息和获取的目标向量输入至解码器组,并获得对应的图像描述;其中,所述解码器组采用了基于transformer模型的扩展结构。
Description
技术领域
本申请涉及图像描述和机器学习领域,尤其涉及一种图像描述方法及装置。
背景技术
图像描述(Image Caption)是一种融合了计算机视觉技术、自然语言处理技术以及机器学习技术的综合性新兴学科。图像描述的目的是根据图片内容自动生成一段描述性文字,其重点在于不仅需要准确的识别图片中的物体,还需要理解不同物体之间的相互关系,并用合理的语言描述出来。
现有的图像描述方法主要采用了编码(Encoder)-解码(Decoder)模型结构,这种结构最早来源于机器翻译领域的用于解决源语言和目标语言句子长度不同的RNN模型;类似的,在图像描述领域使用的Encoder-Decoder模型,则是用图像代替了机器翻译中输入的单词序列。例如,使用CNN模型从输入图像(即一系列像素值)中提取出相应的视觉特征,再使用引入attention机制的LSTM模型将该特征解码成输出序列。但是,这种模型受模型结构限制,不能执行并行计算,导致模型训练的时间过长,严重影响了图像描述的运算效率。
因此,需要提供一种训练时间短、图像描述更加准确的图像描述方法及装置。
发明内容
有鉴于此,本说明书实施例提供了一种图像描述方法及装置,用于解决现有技术中的问题。
本说明书实施例采用下述技术方案:
本说明书实施例提供一种图像描述方法,包括将获取的全局图像信息输入至全局编码器组,并获得图像的全局特征信息;将所述全局特征信息和获取的目标检测信息输入至目标编码器组,并获得目标特征信息;将所述全局特征信息、所述目标特征信息和获取的目标向量输入至解码器组,并获得对应的图像描述;其中,所述解码器组采用了基于transformer模型的扩展结构。
在一个或多个实施例中,获取所述全局图像信息包括利用CNN网络对图像进行编码,并获取所述全局图像信息。
在一个或多个实施例中,获取所述全局图像信息进一步包括:获得CNN网络的最后一层卷积的feature map;对所述最后一层卷积的feature map执行位置编码,获得所述全局图像信息。
在一个或多个实施例中,获取所述目标检测信息包括:利用Faster-RCNN网络对图像进行目标检测编码,并获取所述目标检测信息。
在一个或多个实施例中,获取所述目标检测信息进一步包括:获得Faster-RCNN网络的第FC6层;根据所述第FC6层,获得所述目标检测信息。
在一个或多个实施例中,获取所述目标向量包括:根据当前目标词之前的所述解码器组获得的解码结果,获取所述目标向量。
在一个或多个实施例中,获取所述目标向量进一步包括:针对所述解码结果执行词语转换和位置编码,获取所述目标向量。
在一个或多个实施例中,所述全局编码器组包括依次堆叠的若干全局编码器,所述各全局编码器由下至上均依次包括自注意层和前馈层。
在一个或多个实施例中,将获取的全局图像信息输入至全局编码器组,并获得图像的全局特征信息进一步包括:将所述全局图像信息输入至最下层所述全局编码器,经自注意层和前馈层,获得最下层所述全局编码器的输出;将最下层所述全局编码器的输出作为上一层所述全局编码器的输入执行迭代运算,直到获得所述最上层全局编码器的前馈层的输出作为全局特征信息。
在一个或多个实施例中,所述全局编码器组中的自注意层和前馈层之间还包括残差连接处理和层归一化处理。
在一个或多个实施例中,所述目标编码器组包括依次堆叠的若干目标编码器,所述各目标编码器由下至上均依次包括自注意层、全局注意层和前馈层。
在一个或多个实施例中,将所述全局特征信息和获取的目标检测信息输入至目标编码器组,并获得目标特征信息进一步包括:将所述目标检测信息输入至最下层所述目标编码器的自注意层,并获得最下层所述目标编码器自注意层的输出;将最下层所述目标编码器自注意层的输出与所述全局特征信息输入至最下层所述目标编码器的全局注意层,并获得最下层所述目标编码器的输出;将最下层所述目标编码器的输出作为上一层所述目标编码器的自注意层的输入执行迭代运算,直到获得所述最上层目标编码器的全局注意层的输出作为目标特征信息。
在一个或多个实施例中,所述解码器组包括依次堆叠的若干解码器,所述各解码器由下至上均依次包括自注意层、全局注意层、编-解码层和前馈层。
在一个或多个实施例中,将所述全局特征信息、所述目标特征信息和获取的目标向量输入至解码器组,并获得对应的图像描述进一步包括:将所述目标向量输入至最下层所述解码器的自注意层,并获得最下层所述解码器自注意层的输出;将最下层所述解码器自注意层的输出与所述全局特征信息输入至最下层所述解码器的全局注意层,并获得最下层所述解码器全局注意层的输出;将最下层所述解码器全局注意层的输出与所述目标特征信息输入至最下层所述解码器的编-解码注意层,并获得最下层所述解码器编-解码注意层的输出;将最下层所述解码器编-解码注意层的输出输入至最下层所述解码器的前馈层,并获得最下层所述解码器的输出;将所述最下层所述解码器的输出作为上一层所述解码器的自注意层的输入执行迭代运算,直到获得所述最上层解码器的输出作为对应的图像描述。
在一个或多个实施例中,将所述全局特征信息、所述目标特征信息和获取的目标向量输入至解码器组,并获得对应的图像描述进一步包括:针对所述解码器组的输出执行归一化处理,获得对应的图像描述。
在一个或多个实施例中,所述全局图像信息包括与所述待检测目标相关联的至少一组图像特征信息。
在一个或多个实施例中,所述图像特征信息包括利用不同的图像特征提取方法提取的多组特征信息。
在一个或多个实施例中,所述图像特征信息包括针对包含所述待检测目标的不同图像提取的多组特征信息。
在一个或多个实施例中,所述图像特征信息包括利用ResNet网络和VGG网络分别针对包含所述待检测目标图像提取的两组特征信息。
本说明书实施例还提供一种图像描述装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器运行所述程序时执行如上所述的步骤。
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:
本说明书一个或多个实施例提供了一种图像描述方法及装置,结合了视觉注意力机制和视觉注意力转移的过程,在图像描述任务中根据当前生成的语境、语义和图像全局信息,以及得到的目标检测信息构建了基于transformer扩展结构的图像描述算法模型,该模型在解码端采用了全局解码端和目标解码端相结合,不仅关注了图像的局部信息,同时也关注了图像的全局信息,使得生成的图像描述更加准确;由于采用了基于transformer的扩展结构,使得算法模型在执行运算时能够适合并行计算,能够缩短模型训练时间,大幅度提高图像描述算法模型的运算效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是本说明书一个或多个实施例的LSTM结构示意图;
图2是本说明书一个或多个实施例提供的Transformer模型示意图;
图3是本说明书一个或多个实施例的图像描述算法模型结构示意图;
图4是现有的Transformer模型示意图。
图5是本说明书一个或多个实施例的实例一图像;
图6是本说明书一个或多个实施例的实例二图像。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
循环神经网络(Recurrent Neural Network,RNN)是重要的深度学习算法之一,特别适用于连续序列的训练样本输入,其中,长短期记忆网络(Long Short-Term Memorynetworks,LSTM)是常见的的循环神经网络之一,其有效避免了常规RNN中的梯度消失问题,目前常与attention机制相结合,用于图像描述任务中的解码端。
图1是本说明书一个或多个实施例提供的LSTM结构示意图,如图1所示,LSTM是一种时间递归神经网络,将一个信息输入至LSTM网络中,可以根据规则判断该信息是否符合算法,从而保留符合规则的信息,遗忘不符合的信息。LSTM网络一般包含两个隐藏状态和三种门控结构(Gate),其中,两种隐藏状态分别是隐藏状态h(t)和细胞状态(Cell State)C(t),三种门控结构分别是用于以一定概率控制是否以往上一层的隐藏细胞状态的遗忘门(Forget Gate),用于处理当前序列位置输入的输入门(Input Gate)和用于处理当前序列位置输出的输出门(Output Gate)。
一般来说,可以将attention机制描述成一个query到一系列value对的映射,具体的,给定一组向量几何values和一个向量query,可以利用attention机制根据该query计算values的加权求和。在执行Attention计算时可分为三步,具体如下:
第一步,将query和每个value执行相似度计算获得权重;例如,采用点积、拼接或感知机等相似度函数;
第二步,使用softmax函数对权重进行归一化;
第三步,将权重和对应的value进行加权求和获得attention值。
现有的使用Encoder-Decoder模型的图像描述任务中,解码端(Decoder)常采用LSTM模型结合的attention机制,例如,将编码端提取的特征向量视为位置特征的集合,attention机制可以用于学习位置集合的权重,从而提高目标检测中目标之间的关系的描述效果。
发明人经研究发现,上述图像描述任务中使用的Encoder-Decoder模型,由于在解码端采用了LSTM模型,受模型结构本身(如图1所示)的影响,无法实现并行计算,这就导致模型训练的时间过长,从而影响了计算效率。为此,发明人特别关注了近期提出的机器翻译模型Transformer。
Transformer模型是一种基于attention机制的深度学习算法模型,在并行化处理上具有更大的优势。图2是本说明书一个或多个实施例提供的Transformer模型示意图,如图2所示,Transformer模型包括编码器组和解码器组,例如,编码器组和解码器组中分别包括6个编码器(Encoder)和6个解码器(Decoder)。
具体的,以机器翻译领域的应用为例,编码器包括自注意层(Self-Attention)和前馈层(Feed-Forward),其中,自注意层(Self-Attention)可用于在文本编码中查看输入序列中的其它词语,自注意层(Self-Attention)的输出将会被输入至全连接的前馈神经网络,即前馈层(Feed-Forward),各编码器的前馈神经网络参数的数量虽然相同,但作用相互独立;与编码器类似,解码器也包括自注意层(Self-Attention)和前馈层(Feed-Forward),但在自注意层(Self-Attention)与前馈层(Feed-Forward)之间还包括了编-解码注意层(Encoder-Decoder Attention),用于在解码阶段局部重视与输入句子中对应的词语。由此可知,Transformer模型的自注意层(Self-Attention),其输入和输出是存在依赖关系的,但是在前馈层(Feed-Forward)并不存在依赖关系,因此,可以利用并行化来提升计算速度。
Transformer模型在语义特征提取和长距离特征捕捉等方面已经在机器翻译领域被证明具有较强优势,发明人特别研究了Transformer模型在机器领域上的优势及特点,凭借在图像描述领域积累的经验,发明人认为可以将Transformer模型进行适应性改造,使其能够用于图像描述任务中,并且在图像描述时发挥其并行计算、运行效率高等特点。
为此,发明人提出了一种基于Transformer扩展模型的图像描述算法模型及利用该模型进行图像描述的方法,以下结合附图,详细说明本申请各实施例提供的技术方案。
图3是本说明书一个或多个实施例的图像描述算法模型结构示意图,图4是现有的Transformer模型示意图。如图3所示,该模型包括至少一个全局编码器组、至少一个目标编码器组、至少一个解码器组以及归一化处理器。其中,全局编码器组包含依次堆叠的若干全局编码器,各全局编码器由下至上均依次包括自注意层(Self-Attention)和前馈层(Feed-Forward);目标编码器组包含依次堆叠的若干目标编码器,各目标编码器由下至上均依次包括自注意层(Self-Attention)、全局注意层(Global Feats Attention)和前馈层(Feed-Forward);解码器组包含依次堆叠的若干解码器,各解码器由下至上均依次包括自注意层(Self-Attention)、全局注意层(Global Feats Attention)、编-解码注意层(Encoder-Decoder Attention)和前馈层(Feed-Forward);相比于前述的“解码器也包括自注意层和前馈层,在自注意层与前馈层之间还包括了编-解码注意层”,这里的“解码器依次包括自注意层、全局注意层、编-解码注意层和前馈层”展现了解码器组采用了基于transformer模型的扩展结构,也即展现了基于Transformer的扩展模型。
以包含一个全局编码器、一个目标编码器、一个解码器和一个归一化处理器的图像描述算法模型为例,将获得的待描述图像的全局图像信息(Global Feats,全局图像信息包括与待检测目标相关联的至少一组图像特征信息,图像特征信息包括利用不同的图像特征提取方法提取的多组特征信息,或图像特征信息包括针对包含所述待检测目标的不同图像提取的多组特征信息)输入至全局编码器,依次经过自注意层和前馈层的编码获得编码后的待描述图像的全局特征信息,并将该全局特征信息分别输入至目标编码器和解码器的全局注意层;将获得的待描述图像的目标检测信息(Object Feats)首先输入至目标编码器的自注意层,再将从该自注意层获得的输出与从全局编码器获得的全局特征信息共同输入至目标编码器的全局注意层,经过目标编码器的全局注意层和前馈层后获得目标特征信息,并将该目标特征信息输入至解码器的编-解码注意层;将获得的目标向量(TargetEmbedding)首先输入至解码器的自注意层,再将从该自注意层获得的输出,与从全局编码器获得的全局特征信息共同输入至解码器的全局注意层,再将从该全局注意层获得的输出,与从目标编码器获得的目标特征信息共同输入至解码器的编-解码注意层,将从编-解码注意层获得的输出经过解码器的前馈层,从而获得解码器的输出,将该输出输入至归一化处理器,进行归一化处理,从而获得对应于图像的描述。
若一个全局编码器组中的全局编码器为一个以上,或一个目标编码器组中的目标编码器为一个以上,或一个解码器组中的解码器为一个以上,则将获取的全局图像信息输入至全局编码器组,并获得图像的全局特征信息进一步包括:将所述全局图像信息输入至最下层所述全局编码器,经自注意层和前馈层,获得最下层所述全局编码器的输出;将最下层所述全局编码器的输出作为上一层所述全局编码器的输入执行迭代运算,直到获得所述最上层全局编码器的前馈层的输出作为全局特征信息。
将所述全局特征信息和获取的目标检测信息输入至目标编码器组,并获得目标特征信息进一步包括:将所述目标检测信息输入至最下层所述目标编码器的自注意层,并获得最下层所述目标编码器自注意层的输出;将最下层所述目标编码器自注意层的输出与所述全局特征信息输入至最下层所述目标编码器的全局注意层,经过最下层目标编码器的全局注意层和前馈层获得最下层所述目标编码器的输出;将最下层所述目标编码器的输出作为上一层所述目标编码器的自注意层的输入执行迭代运算,直到获得所述最上层目标编码器的全局注意层的输出作为目标特征信息。
将所述全局特征信息、所述目标特征信息和获取的目标向量输入至解码器组,并获得对应的图像描述进一步包括:将所述目标向量输入至最下层所述解码器的自注意层,并获得最下层所述解码器自注意层的输出;将最下层所述解码器自注意层的输出与所述全局特征信息输入至最下层所述解码器的全局注意层,并获得最下层所述解码器全局注意层的输出;将最下层所述解码器全局注意层的输出与所述目标特征信息输入至最下层所述解码器的编-解码注意层,并获得最下层所述解码器编-解码注意层的输出;将最下层所述解码器编-解码注意层的输出输入至最下层所述解码器的前馈层,并获得最下层所述解码器的输出;将所述最下层所述解码器的输出作为上一层所述解码器的自注意层的输入执行迭代运算,直到获得所述最上层解码器的输出作为对应的图像描述。
在一个或多个实施例中,由于transformer模型的结构不使用任何递归结构或卷积结构,为了让模型能利用输入序列的顺序信息,就需要引入能表达输入序列每个部分的绝对或相对位置的信息。例如,可以利用CNN网络对图像进行编码处理,并将最后一层卷积的feature map经过位置编码(Positional Encoding)后作为全局图像信息输入至上述全局编码器,其中,位置编码是指对序列中包含的元素的位置进行编码,具体的,该featuremap可以表示为:
F=[f1,f2,...,fM],fi∈RD
其中,D是feature map的尺寸,M是feature map的空间位置。
在一个或多个实施例中,CNN网络的结构一般包括数据输入层(Input layer)、卷积层(CONV layer)、激励层(ReLU layer)、池化层(Pooling layer)以及全连接层(FClayer)。
其中,输入层用于对图像原始数据执行预处理,例如,去均值处理(即将输入数据各维度均中心化为0)、归一化处理(即将幅度归一化至相同范围,以便减少取值范围差异的干扰)或白化或降维处理等。卷积层是一种局部关联结构,其中的每个神经元可以看作是一个滤波器(filter),通过对窗口(Receptive Field)进行滑动操作,滤波器可以针对局部数据进行计算,卷积层是CNN网络的重要层次之一,具有参数共享机制,即每个神经元连接数据窗的权重是固定的。激励层的作用是针对卷积层的输出结果执行非线性映射。其中,CNN网络通常采用的激励函数为修正线性单元(The Rectified Linear Unit,ReLU),该激励函数的收敛较快且梯度计算简单。池化层一般用于压缩数据和参数的量,以便减小过拟合,在图像领域,池化层可用于压缩图像,常用的方法有Max pooling和average pooling,其中,Max pooling更加常用,例如,基于Max pooling方法,针对每个2*2的窗口选出最大数作为输出矩阵的相应元素值。全连接层通常设置在CNN网络的尾部,由于两层之间所有神经元都有权重连接,设置全连接层的作用是最大可能的利用现在经过窗口滑动和池化后保留下的少量信息还原原本的输入信息。
在CNN网络中,根据实际需求,卷积层、激励层以及池化层可以在隐藏层中出现多次。其中,在CNN的每个卷积层,数据都是以三维形式存在的,也可以将看成许多个二维图片叠在一起,其中,每一个三维数据可以称为一个feature map,例如,在输入层,如果是灰度图片,那么在卷积层就只有一个feature map;如果是彩色图片(RGB),一般就是3个featuremap(红绿蓝)。
在一个或多个实施例中,上述全局编码器中的每个层之间均引入了残差连接(Residual Connection)和层归一化(Layer Normalization)。其中,残差连接是指,假设一个输入向量x,经过一个网络结构,得到输出向量f(x),加上残差连接,相当于在输出向量中加入输入向量,即输出结构变为f(x)+x,残差连接的优势在于,对x求偏导时,加入一项常数项1,避免了梯度消失的问题;层归一化是指在每一层输出的每一个样本上进行归一化,归一化的本质是将数据转化为均值为0,方差为1的数据,从而减小数据的偏差,规避训练过程中梯度消失或爆炸的情况。
具体的,利用CNN网络获得的全局图像信息输入至包含若干全局编码器的全局编码器组后,依次经过堆叠的各全局编码器,经过第一个全局编码器的自注意层后做一次残差连接和层归一化,可以获得:
G(l)=MultiHead(F,F,F)
再将获得的G(1)输入至前馈层,并获得前馈层的输出H(1),再将获得的输出H(1)做一次残差连接和层归一化输入至下一个全局编码器,经过NG次的迭代后,在最后一个全局编码器,可以获得:
G(n)=MultiHead(F(n-1),F(n-1),F(n-1))
H.(n)=LayerNorm(H(n)+G(n))
在一个或多个实施例中,上述全局编码器的输入可以包含多个与目标相关联的全局图像信息。
例如,上述全局图像信息可以是利用不同的图像识别方法,针对包含目标的同一张图像提取的若干全局图像信息。以VGGNet模型和ResNet模型针对同一张图像分别提取全局图像信息为例进行说明。图像特征信息包括利用ResNet网络和VGG网络分别针对包含所述待检测目标图像提取的两组特征信息。
VGGNet模型包含很多级别的网络,深度从11层到19层不等,比较常用的是VGGNet-16和VGGNet-19。VGGNet模型把网络分成了5段,每段都把多个3*3的卷积网络串联在一起,每段卷积后面接一个最大池化层,最后是3个全连接层和一个softmax层。
VGGNet模型利用了反复的堆叠3*3的小型卷积核和2*2的最大池化层,通过不断加深网络结构来提升性能。其中,网络层数的增长并不会带来参数量上的爆炸,因为参数量主要集中在最后三个全连接层中。同时,两个3*3卷积层的串联相当于1个5*5的卷积层,3个3*3的卷积层串联相当于1个7*7的卷积层,使得前者对于特征的学习能力更强。
ResNet模型,即,残差网络模型,采用了跨层链接思想,假定某段神经网络的输入是x,期望输出是H(x),即,H(x)是期望的复杂潜在映射,通过“shortcut connections(捷径连接)”的方式,可以直接把输入x传到输出作为初始结果,输出结果为:
H(x)=F(x)+x
当F(x)=0时,那么H(x)=x,即,恒等映射。
也就是说,残差网络相当于将学习目标改变为目标值H(X)和x的差值,即,残差:
F(x):=H(x)-x
因此,残差网络的训练目标就是要将残差结果逼近于0,使到随着网络加深,准确率不下降。这种残差跳跃式的结构,打破了传统的神经网络n-1层的输出只能给n层作为输入的惯例,使某一层的输出可以直接跨过几层作为后面某一层的输入,其意义在于为叠加多层网络而使得整个学习模型的错误率不降反升的难题提供了新的方向。
又例如,上述全局图像信息可以是针对包含目标的一系列图像分别提取的若干全局图像信息,其中,一系列图像可以是一段视频中的连续视频帧,或者是以目标为中心的不同角度的图像,如目标的俯视图、侧视图、底视图等。利用图像识别方法分别获得上述全局图像信息后,可将上述全局图像信息分别输入至全局编码器,并将获得的对应数量的全局特征信息共同输入至目标编码器的全局注意层和解码器的全局注意层,用于对目标检测信息的编码,和图像的解码,最终获得对应于图像的描述,例如,当一系列图像是一段视频中的连续视频帧时,可以获得目标在该段视频中的描述;当一系列图像是以目标为中心的图像时,可以获得该目标在其背景环境中更加精确的描述。
在一个或多个实施例中,为了让模型能利用输入序列的顺序信息,还可以利用Faster-RCNN网络进行图像的目标检测编码处理,例如,可以获得Faster-RCNN网络的第FC6层,将Faster-RCNN网络的第FC6层作为目标检测信息输入至上述目标编码器。具体的,第FC6层的目标检测信息可以表示为:
V={v1,v2,...,vk}
与全局编码器类似,目标编码器中的每个层之间也引入了残差连接和层归一化,具体的,将目标检测信息V输入至包含若干目标编码器的目标编码器组后,依次经过堆叠的各目标编码器,经过NO次的迭代后,在最后一个目标编码器,可以获得:
S(n)=MultiHead(V(n-1),V(n-1),V(n-1))
Q(n)=MultiHead(H(Nc),H(Nc),S.(n))
P.(n)=LayerNorm(P(n)+Q.(n))
在一个或多个实施例中,Faster-RCNN网络一般包括特征提取部分、RPN部分、Proposal Layer部分以及ROI Pooling部分。具体的,特征提取部分是指用一串卷积和pooling从原图中提取出feature map;RPN部分是通过网络训练的方式从feature map中获取目标的大致位置;Proposal Layer部分是指利用RPN获得的大致位置进行继续训练,获得更精确的位置;ROI Pooling部分是指利用前面获取到的精确位置,从feature map中抠出要用于分类的目标,并pooling成固定长度的数据。
在一个或多个实施例中,上述模型中的解码器组采用了transformer的扩展结构,因此在解码时不仅要考虑当前的解码序列,还要考虑已经解码完成的序列。假设解码器预测的第t-th个词为yt,则在yt之前,解码器组的解码结果可以表示为:
其中,Dv是词库的大小。
根据上述获得的在词yt之前解码器组获得的解码结果Y获取目标向量,具体的,将上述获得的在词yt之前解码器组获得的解码结果Y经过词语转换(Wording embedding)和位置编码(Positional Encoding)后作为解码器组的输入,即目标向量,其中,词语转换是指将文本空间中的某个词语,通过一定的方法映射到另一个数值向量空间,即将文本数据转换为数值型数据;位置编码是指对序列中所包含的元素的位置进行编码。
将目标向量输入至解码器组后,可以在各解码器层获得:
A(n)=MaskedMultiHead(Yn,Yn,Yn)
B(n)=MultiHead(H.Nc,H.Nc,A.(n))
C(n)=MultiHead(P.Mc,P.Mc,B.(n))
D.(n)=LayerNorm(D(n)+C.(n))
其中,A(n)是自注意层的输出;B(n)是全局注意层的输出;C(n)是编-解码注意层的输出;D(n)是前馈层的输出;D.(n)层归一化的输出。类似的,通过堆叠上述解码器的各层可以获得对应于图像的解码器的输出,即对应于图像的描述。
在一个或多个实施例中,图5和图6是本说明书一个或多个实施例的实例图像,利用现有的图像描述算法模型(现有的Encoder-Decoder模型)对上述两幅图像进行描述,分别获得:
图5:“a young boy holding a pair of scissors in front of a wooden”
图6:“a basketball player in a white uniform is jumping up to catch aball”
相对应的,将图5和图6分别利用本申请实施例提供的图像描述算法模型执行图像描述,可以获得对应的描述为:
图5:“a young boy cutting a piece of paper with scissors”
图6:“a basketball player in a white uniform is attempting to blockthe ball”
由此可知,利用本申请实施例提供的图像描述算法模型获得的图像描述结果相对于一般的图像描述算法获得的描述结果,更加准确,并且更加符合语言的语法习惯。
本实施例中,通过目标检测得到的目标检测信息后,可以利用transformer扩展模型里的注意力机制对图像通过CNN得到的全局图像信息进行关注,并将得到的两种特征进行了融合,即对两种特征分别利用全局编码器和目标编码器进行自注意力过程(全局编码器和目标编码器的自注意层),使得两种特征有较好的融合;然后利用目标检测信息检索全局图像信息(全局注意层),使得全局图像信息具有更强语义信息;本实施例中,根据目标检测信息去引导全局图像信息的注意力转移,保证注意力转移的有效性;从而结合了视觉注意力机制和视觉注意力转移的过程。
本实施例结合了视觉注意力机制和视觉注意力转移的过程,在图像描述任务中根据当前生成的语境、语义和图像全局信息,以及得到的目标检测信息构建了基于transformer扩展结构的图像描述算法模型,该模型在解码端采用了全局解码端和目标解码端相结合,不仅关注了图像的局部信息,同时也关注了图像的全局信息,使得生成的图像描述更加准确;由于采用了基于transformer的扩展结构,使得算法模型在执行运算时能够适合并行计算,能够缩短模型训练时间,大幅度提高图像描述算法模型的运算效率。
本说明书实施例还提供一种图像描述装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器运行所述程序时执行如上所述图像描述方法的步骤。
本说明书实施例还提供一种图像描述设备,包括:
至少一个处理器;
以及,
与所述至少一个处理器通信连接的存储器;
其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述图像描述方法的步骤。
本申请实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现如前所述的图像描述方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的进行图像描述的方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述进行图像描述的方法的技术方案的描述。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。
Claims (16)
1.一种图像描述方法,包括:
将获取的图像的全局图像信息输入至全局编码器组,并获得图像的全局特征信息;
将所述全局特征信息和获取的目标检测信息输入至目标编码器组,并获得目标特征信息;
根据当前目标词之前的解码器组获得的解码结果,获取目标向量;其中,所述解码器组采用基于transformer模型的扩展结构,包括依次堆叠的若干解码器,所述各解码器由下至上均依次包括自注意层、全局注意层、编-解码层和前馈层;
将所述全局特征信息、所述目标特征信息和所述目标向量输入至解码器组,并获得对应的图像描述,该步骤包括:
将所述目标向量输入至最下层所述解码器的自注意层,并获得最下层所述解码器自注意层的输出;
将最下层所述解码器自注意层的输出与所述全局特征信息输入至最下层所述解码器的全局注意层,并获得最下层所述解码器全局注意层的输出;
将最下层所述解码器全局注意层的输出与所述目标特征信息输入至最下层所述解码器的编-解码注意层,并获得最下层所述解码器编-解码注意层的输出;
将最下层所述解码器编-解码注意层的输出输入至最下层所述解码器的前馈层,并获得最下层所述解码器的输出;
将所述最下层所述解码器的输出作为上一层所述解码器的自注意层的输入执行迭代运算,直到获得最上层解码器的输出作为对应的图像描述。
2.如权利要求1所述图像描述方法,其特征在于,获取所述全局图像信息包括:利用CNN网络对图像进行编码,并获取所述全局图像信息。
3.如权利要求2所述图像描述方法,其特征在于,获取所述全局图像信息进一步包括:
获得CNN网络的最后一层卷积的feature map;
对所述最后一层卷积的feature map执行位置编码,获得所述全局图像信息。
4.如权利要求1所述图像描述方法,其特征在于,获取所述目标检测信息包括:利用Faster-RCNN网络对图像进行目标检测编码,并获取所述目标检测信息。
5.如权利要求4所述图像描述方法,其特征在于,获取所述目标检测信息进一步包括:
获得Faster-RCNN网络的第FC6层;
根据所述第FC6层,获得所述目标检测信息。
6.如权利要求1所述图像描述方法,其特征在于,获取所述目标向量进一步包括:针对所述解码结果执行词语转换和位置编码,获取所述目标向量。
7.如权利要求1所述图像描述方法,其特征在于,将获取的全局图像信息输入至全局编码器组,并获得图像的全局特征信息进一步包括:
将所述全局图像信息输入至最下层所述全局编码器,经自注意层和前馈层,
获得最下层所述全局编码器的输出;
将最下层所述全局编码器的输出作为上一层所述全局编码器的输入执行迭代运算,直到获得最上层全局编码器的前馈层的输出作为全局特征信息。
8.如权利要求7所述图像描述方法,其特征在于,所述全局编码器中的自注意层和前馈层之间还包括残差连接处理和层归一化处理。
9.如权利要求1所述图像描述方法,其特征在于,所述目标编码器组包括依次堆叠的若干目标编码器,所述各目标编码器由下至上均依次包括自注意层、全局注意层和前馈层。
10.如权利要求9所述图像描述方法,其特征在于,将所述全局特征信息和获取的目标检测信息输入至目标编码器组,并获得目标特征信息进一步包括:
将所述目标检测信息输入至最下层所述目标编码器的自注意层,并获得最下层所述目标编码器自注意层的输出;
将最下层所述目标编码器自注意层的输出与所述全局特征信息输入至最下层所述目标编码器的全局注意层,并获得最下层所述目标编码器的输出;
将最下层所述目标编码器的输出作为上一层所述目标编码器的自注意层的输入执行迭代运算,直到获得最上层目标编码器的全局注意层的输出作为目标特征信息。
11.如权利要求1所述图像描述方法,其特征在于,将所述全局特征信息、所述目标特征信息和获取的目标向量输入至解码器组,并获得对应的图像描述进一步包括:
针对所述解码器组的输出执行归一化处理,获得对应的图像描述。
12.如权利要求1所述图像描述方法,其特征在于,所述全局图像信息包括与待检测目标相关联的至少一组图像特征信息。
13.如权利要求12所述图像描述方法,其特征在于,所述图像特征信息包括利用不同的图像特征提取方法提取的多组特征信息。
14.如权利要求12或13所述图像描述方法,其特征在于,所述图像特征信息包括针对包含所述待检测目标的不同图像提取的多组特征信息。
15.如权利要求14所述图像描述方法,其特征在于,所述图像特征信息包括利用ResNet网络和VGG网络分别针对包含所述待检测目标图像提取的两组特征信息。
16.一种图像描述装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器运行所述程序时执行如权利要求1-15任一项所述的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910617308.3A CN110349229B (zh) | 2019-07-09 | 2019-07-09 | 一种图像描述方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910617308.3A CN110349229B (zh) | 2019-07-09 | 2019-07-09 | 一种图像描述方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110349229A CN110349229A (zh) | 2019-10-18 |
CN110349229B true CN110349229B (zh) | 2023-06-02 |
Family
ID=68176795
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910617308.3A Active CN110349229B (zh) | 2019-07-09 | 2019-07-09 | 一种图像描述方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110349229B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111523534B (zh) * | 2020-03-31 | 2022-04-05 | 华东师范大学 | 一种图像描述的方法 |
CN111901610B (zh) * | 2020-08-03 | 2021-09-21 | 西北工业大学 | 一种基于多层编码器的并行图像描述方法 |
CN111914842A (zh) * | 2020-08-10 | 2020-11-10 | 深圳市视美泰技术股份有限公司 | 车牌信息的识别方法、装置、计算机设备及存储介质 |
CN112016493B (zh) * | 2020-09-03 | 2024-08-23 | 科大讯飞股份有限公司 | 图像描述方法、装置、电子设备及存储介质 |
CN113569068B (zh) * | 2021-01-19 | 2023-09-29 | 腾讯科技(深圳)有限公司 | 描述内容生成方法、视觉内容的编码、解码方法、装置 |
CN112966140B (zh) * | 2021-03-10 | 2023-08-08 | 北京百度网讯科技有限公司 | 字段识别方法、装置、电子设备、存储介质和程序产品 |
CN113469260B (zh) * | 2021-07-12 | 2022-10-04 | 天津理工大学 | 一种基于卷积神经网络、注意力机制及自注意力变换器的视觉描述方法 |
CN115359323B (zh) * | 2022-08-31 | 2023-04-25 | 北京百度网讯科技有限公司 | 图像的文本信息生成方法和深度学习模型的训练方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001014801A (ja) * | 1998-10-27 | 2001-01-19 | Hitachi Maxell Ltd | 情報記録方法及びシステム、画像圧縮/伸張システム、システム制御方法、及び、これらの一部又は全部を有する監視システム |
CN107066973A (zh) * | 2017-04-17 | 2017-08-18 | 杭州电子科技大学 | 一种利用时空注意力模型的视频内容描述方法 |
CN108305296A (zh) * | 2017-08-30 | 2018-07-20 | 深圳市腾讯计算机系统有限公司 | 图像描述生成方法、模型训练方法、设备和存储介质 |
-
2019
- 2019-07-09 CN CN201910617308.3A patent/CN110349229B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001014801A (ja) * | 1998-10-27 | 2001-01-19 | Hitachi Maxell Ltd | 情報記録方法及びシステム、画像圧縮/伸張システム、システム制御方法、及び、これらの一部又は全部を有する監視システム |
CN107066973A (zh) * | 2017-04-17 | 2017-08-18 | 杭州电子科技大学 | 一种利用时空注意力模型的视频内容描述方法 |
CN108305296A (zh) * | 2017-08-30 | 2018-07-20 | 深圳市腾讯计算机系统有限公司 | 图像描述生成方法、模型训练方法、设备和存储介质 |
Non-Patent Citations (2)
Title |
---|
Captioning transformer with stacked attention modules;Xinxin Zhu.et al;《applied sciences》;20180507;1-11 * |
融合注意力和动态语义指导的图像描述模型;张威等;《计算机科学与探索》;20170721(第12期);2032-2039 * |
Also Published As
Publication number | Publication date |
---|---|
CN110349229A (zh) | 2019-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110349229B (zh) | 一种图像描述方法及装置 | |
Wang et al. | Deep visual domain adaptation: A survey | |
CN110738090B (zh) | 使用神经网络进行端到端手写文本识别的系统和方法 | |
CN111783705B (zh) | 一种基于注意力机制的文字识别方法及系统 | |
Li et al. | Towards end-to-end text spotting with convolutional recurrent neural networks | |
CN112528780B (zh) | 通过混合时域自适应的视频动作分割 | |
CN108171198A (zh) | 基于非对称多层lstm的连续手语视频自动翻译方法 | |
CN113836992B (zh) | 识别标签的方法、训练标签识别模型的方法、装置及设备 | |
CN113486669B (zh) | 应急救援输入语音的语义识别方法 | |
US11568140B2 (en) | Optical character recognition using a combination of neural network models | |
CN114896434B (zh) | 一种基于中心相似度学习的哈希码生成方法及装置 | |
CN116564355A (zh) | 一种基于自注意力机制融合的多模态情感识别方法、系统、设备及介质 | |
Cui et al. | Representation and correlation enhanced encoder-decoder framework for scene text recognition | |
CN117315070A (zh) | 图像生成方法、装置、电子设备、存储介质和程序产品 | |
CN116580278A (zh) | 一种基于多注意力机制的唇语识别方法、设备及存储介质 | |
Tekir et al. | Deep learning: Exemplar studies in natural language processing and computer vision | |
CN117851565A (zh) | 基于多源交互的文本视觉问答方法及系统 | |
CN117875395A (zh) | 多模态预训练模型的训练方法、装置及存储介质 | |
Goel et al. | Injecting prior knowledge into image caption generation | |
CN115862015A (zh) | 文字识别系统的训练方法及装置、文字识别方法及装置 | |
Sudhakaran et al. | Top-down attention recurrent VLAD encoding for action recognition in videos | |
CN113553917B (zh) | 一种基于脉冲迁移学习的办公设备识别方法 | |
CN114821802A (zh) | 基于多线索相互蒸馏和自蒸馏的连续手语识别方法 | |
Bisht et al. | Role of artificial intelligence in object detection: a review | |
CN111291788A (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 |