基于语义空间约束和注意力机制的场景图生成方法
技术领域
本发明涉及图像处理领域,特别是涉及一种基于语义空间约束和注意力机制的场景图生成方法。
背景技术
场景图生成技术是利用图像理解感知技术对图像中的物体进行分类,并且对于两两物体之间,生成<subject relationship object>的三元组关系。物体和它们之间的关系对于图像理解来说至关重要,其生成的场景图,包含图像中所有的物体和两两之间的关系,也可能二者之间并不存在关系,这也是一个种类;并且包含了丰富的信息,可以应用于解决图像标注(image caption)的问题和视觉问答(VQA)问题。同时对图像的理解技术还可应用于机器人的任务中。
目前场景图生成方法存在的不足:有的方法仅考虑语义相关的约束,而忽略了图像本身的特征;而有些方法通过message passing机制传递信息,容易引入噪声,其它区域的特征并不能给关系推理带来有用的信息。因而,现有技术中难以结合语义信息进行场景理解,并且现有技术网络较为复杂,对于物体之间关系的推测可解释性较差,并且过程容易引入噪声信息。
因此亟需提供一种新型的场景图生成方法来解决上述问题。
发明内容
本发明所要解决的技术问题是提供一种基于语义空间约束和注意力机制的场景图生成方法,具有更高的关系推理精度,能够更有效提取出存在物体相关关系的特征。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种基于语义空间约束和注意力机制的场景图生成方法,包括以下步骤:
S1:采用VG数据集,随机选取若干张图像作为验证集,在剩余图像中按比例随机选取,分别作为训练集和测试集;
S2:基于深度学习的方法和VG数据集,构建目标检测网络;
S3:基于深度学习的方法和VG数据集,建立关系推理网络;
S4:根据关系推理网络得到的语义约束信息和注意力网络,得到突出可能存在相关关系的区域和通道特征,进行关系推理分类。
在本发明一个较佳实施例中,在步骤S2中,所述目标检测网络使用Faster-RCNN网络,包括前端基础网络VGG16、RPN网络,所述VGG16用于提取图像的特征。
进一步的,步骤S2的具体步骤包括:
所述前端基础网络VGG16提取图像的特征,得到特征图,即输出物体的特征表示;将特征图送入RPN网络,得到ROI区域,框定物体的位置,即输出物体的位置信息;并且对物体进行分类,得到物体的种类概率。
在本发明一个较佳实施例中,步骤S3的具体步骤包括:
S3.1:将目标检测输出的物体的特征表示、位置信息、种类概率拼接起来送入一个双向LSTM网络中,得到融入了语义上下文信息的物体特征表示;
S3.2:再将双向LSTM网络的输出输入到一个单向LSTM解码器中进行解码操作,得到物体的种类标签;
S3.3:根据步骤S3.1的双向LSTM网络所得到的物体种类预测概率、种类预测结果和物体的位置信息作为监督信号,用预测种类信息和位置信息调整权重,建立空间和通道的注意力网络,提取物体之间存在关系的区域的特征;空间注意力机制主要用于找出相关区域可能存在物体之间的相互关系,通道注意力机制主要用于找出每个滤波器提取的图像特征映射中可能存在物体之间的相互关系;
S3.4:基于双向LSTM网络以及单向LSTM解码器所得到的物体种类概率分布、双向LSTM网络中输出的物体的特征表示以及步骤S2中得到的物体的位置信息,将三者信息融合映射到一个语义编码空间中,通过训练权重,将物体的视觉特征映射到所述语义编码空间中。
进一步的,在步骤S3.3中,所述空间注意力网络的建立步骤包括:
S101:将两个物体所在区域拼接在同一个区域,经过ROI池化后得到含两个物体的特征图;
S102:将两个物体所在区域的特征图以及物体的种类标签送入注意力网络中,得到注意力权重,其中注意力机制满足如下公式:
Watt(O1,O2)=Wp+Vpf(QE(O1,O2))
O1和O2为两个物体的种类,Watt(O1,O2)为O1,O2两个物体的注意力权重,E(O1,O2)为嵌入层,Q为一个线性变换矩阵,f为Relu激活函数,Vp为另一个线性变换矩阵,Wp为固定参数,作为一个独立的权重,不随物体的种类变化而变化;
S103:空间中每一位置均与注意力权重相乘,得到一张注意力映射图;
S104:将注意力映射图与输入的区域特征图相乘的,得到注意力热力图。
进一步的,在步骤S3.3中,所述通道注意力网络的建立步骤包括:
S201:将两个物体所在区域拼接在同一个区域,经过ROI池化后得到含两个物体的特征图;
S202:将两个物体所在区域的特征图以及物体的种类标签送入注意力网络中,得到注意力权重,其中注意力机制满足如下公式:
Watt(O1,O2)=Wp+Vpf(QE(O1,O2))
O1和O2为两个物体的种类,Watt(O1,O2)为O1,O2两个物体的注意力权重,E(O1,O2)为嵌入层,Q为一个线性变换矩阵,f为Relu激活函数,Vp为另一个线性变换矩阵,Wp为固定参数,作为一个独立的权重,不随物体的种类变化而变化;
S203:每一个滤波器得到的特征映射图与注意力权重相乘,得到每一个通道的注意力值;
S204:将得到的通道注意力值与输入的区域特征图相乘,得到注意力热力图。
进一步的,在步骤S3.4中,所述语义编码空间训练权重受VTransE的启发,存在如下关系:
Wsxs+to≈Woxo
其中,WsXs是一个线性映射,将主语表示的物体(subject)的特征表示映射到一个语义编码空间中;WoXo也是一个线性映射,将宾语表示的物体(object)的特征表示映射到同样的语义编码空间中;在这样的特征空间中,存在上述关系,即to是在这样一个特征编码空间中关系的表示。
进一步的,步骤S4的具体步骤包括:
根据步骤S3.3得到的注意力网络的结果送入全连接层进关系分类,同时将步骤3.4中语义空间编码空间约束的结果送入另一个全连接层进行关系分类,将两个分类结果拼接起来,再送入一个全连接层中得到最终分类结果。
本发明的有益效果是:
(1)本发明将物体的分类和关系的分类分开,先通过目标检测网络检测物体定位和分类,接下来进行物体相关关系分类,结合空间和通道的注意力机制来确定物体之间可能存在关系的位置和相关特征,通过关系嵌入表示,约束可能存在的关系项;本发明无需使用图相关信息流传递机制,基于语义空间的约束和注意力机制推测两两物体之间的相关关系。
(2)本发明由于采用了语义空间约束和注意力机制相结合的方法,没有引入更多的噪声,网络比较简单,提供了更高的关系推理精度;
(3)根据物体对的种类信息引导空间注意力和通道注意力,更有效提取出存在物体相关关系的特征,应用前景广阔。
附图说明
图1是本发明基于语义空间约束和注意力机制的场景图生成方法的流程图;
图2是所述语义空间约束的流程图;
图3是所述空间注意力网络的建立流程图;
图4是所述通道注意力网络的建立流程图。
具体实施方式
下面结合附图对本发明的较佳实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
请参阅图1,本发明实施例包括:
一种基于语义空间约束和注意力机制的场景图生成方法,包括以下步骤:
S1:采用VG(Visual Genome,视觉基因组)数据集,随机选取5000张图像作为验证集,在剩余图像中按7:3的比例随机选取,分别作为训练集和测试集;
VG数据集是由斯坦福大学计算机视觉专家李菲菲和同事共同开发的,包含108077张图片,540万区域描述,170万的视觉问答对,380万的物体实例,280万的物体属性描述和230万的物体相关关系对描述。对于图片中的每一个关键部分,对于每一个对象,关系,属性都对应有详细的描述。在图中用边界框标定出来,得到对应的坐标,边界框和文字是一一对应的。本发明的任务是对图像中每一对物体,构造出三元组(主语,关系,宾语),将图中的每一对关系都找出来,并列出正确的关系,即得到场景图。VG数据集有丰富的数据和关系描述,能够满足本发明得到的训练模型所需大量数据的要求。
S2:基于深度学习的方法和VG数据集,构建目标检测网络;
目标检测的主要任务是对多个物体的定位和分类,即给出区域框定物体的位置和给出物体的分类结果。在场景图生成中,所述目标检测网络使用Faster-RCNN网络,包括前端基础网络VGG16、RPN网络,所述VGG16用于提取图像的特征。
所述前端基础网络VGG16提取图像的特征,得到特征图(feature map),即输出物体的特征表示;将特征图送入RPN网络,得到ROI区域,框定物体的位置,即输出物体的位置信息;并且对物体进行分类,得到物体的种类概率。
S3:基于深度学习的方法和VG数据集,建立关系推理网络;具体步骤如下:
S3.1:将目标检测输出的物体的特征表示、位置信息、种类概率拼接起来送入一个双向LSTM网络中,得到融入了语义上下文信息的物体特征表示;其中,所述双向LSTM的隐藏层为512。
LSTM网络能够控制历史信息和当前信息的记忆和遗忘程度,而双向LSTM网络除了控制历史信息和当前信息外,未来的输入也会对当前输入产生影响。VG数据集中的关系对多次出现,这也符合生活的客观规律,有些关系对普遍存在且发生,比如人骑自行车,人和自行车同时出现,则骑这一关系很有可能出现在人和自行车之间,双向LSTM用于捕获这些经常出现的可能存在的关系,并且历史输入和未来的输入均对当前输入产生影响,结合了语义上下文信息,提高了分类的精度。融合了语义上下文的特征向量送入后续的关系分类网络中能更有效地推理出物体对之间的关系。
S3.2:再将双向LSTM网络的输出输入到一个单向LSTM解码器中进行解码操作,得到物体的种类标签,即物体的种类概率分布取最大值作为种类标签,提高目标检测的精度;
S3.3:根据步骤S3.1的双向LSTM网络所得到的物体种类预测概率、种类预测结果和物体的位置信息作为监督信号,用预测种类信息和位置信息调整权重,建立空间和通道的注意力网络,提取物体之间存在关系的区域的特征;空间注意力机制主要用于找出相关区域可能存在物体之间的相互关系,通道注意力机制主要用于找出每个滤波器提取的图像特征映射中可能存在物体之间的相互关系;
结合图3,所述空间注意力网络的建立步骤包括:
S101:在步骤S2中,目标检测网络经过ROI池化后得到的每一区域的大小为7*7*512,7是每一个区域的特征图的长和宽,512为通道(channel)的值。将两个物体所在的区域拼接在同一区域,经过ROI Pooling(池化)后得到含两个物体的特征图,尺寸仍然为7*7*512;
S102:将两个物体所在区域的特征图以及物体的种类标签送入注意力网络中,得到注意力权重,其中注意力机制满足如下公式:
Watt(O1,O2)=Wp+Vpf(QE(O1,O2))
O1和O2为两个物体的种类,Watt(O1,O2)为O1,O2两个物体的注意力权重,E(O1,O2)为嵌入层(embedding),Q为一个线性变换矩阵,f为Relu激活函数,Vp为另一个线性变换矩阵,Wp为固定参数,作为一个独立的权重,不随物体的种类变化而变化;
S103:空间中每一位置均与注意力权重相乘,得到一张注意力映射图;
S104:将注意力映射图与输入的区域特征图相乘的,得到注意力热力图。
同理,结合图4,所述通道注意力网络的建立步骤包括:
S201:将两个物体所在区域拼接在同一个区域,经过ROI池化后得到含两个物体的特征图;
S202:将两个物体所在区域的特征图以及物体的种类标签送入注意力网络中,得到注意力权重,其中注意力机制满足如下公式:
Watt(O1,O2)=Wp+Vpf(QE(O1,O2))
O1和O2为两个物体的种类,Watt(O1,O2)为O1,O2两个物体的注意力权重,E(O1,O2)为嵌入层(embedding),Q为一个线性变换矩阵,f为Relu激活函数,Vp为另一个线性变换矩阵,Wp为固定参数,作为一个独立的权重,不随物体的种类变化而变化;
S203:每一个滤波器得到的特征映射图与注意力权重相乘,得到每一个通道的注意力值;
S204:将得到的通道注意力值与输入的区域特征图相乘,得到注意力热力图。
对于空间注意力机制,空间的每个位置的特征表示都与该权重矩阵相乘,而该权重矩阵根据物体的种类和位置相关信息进行调整,比如目标检测的结果是“人”和“马”,注意力网络就会聚焦在人和马之间,可以推理出是“人骑马”还是“人喂马”,可以推理出人和马之间的关系是“骑”或是“喂”或是其他的关系,有更强的鲁棒性。同样的,对于通道注意力机制,每一个通道的特征图都与这样一个权重矩阵相乘,集中关注几个通道提取的图像特征。对于空间注意力网络,每一个位置的注意力权重如下,hij为特征图中位置为(i,j)上的所有通道特征:
其中,a(hij)是坐标为(i,j)位置上的注意力值(attention)大小,f为一个特征映射函数(在本实施例中使用一个全连接层);Watt为计算出来的权重值,hij为特征图上(i,j)位置上的特征表示;b为一个常数。得到的注意力权重再和输入的特征图相乘,得到输出结果。
S3.4:基于双向LSTM网络以及单向LSTM解码器所得到的物体种类概率分布、双向LSTM网络中输出的物体的特征表示以及步骤S2中得到的物体的位置信息,将三者信息融合映射到一个语义编码空间中,受VtransE(Visual Translation Embedding network,视觉转换嵌入网络)的启发,在低维关系空间确定的物体关系可以被建模为简单的向量转换,在语义编码空间中,存在如下关系:
Wsxs+to≈Woxo
其中,WsXs是一个线性映射,将subject(主语表示的物体)的特征表示映射到一个语义编码空间中,WoXo也是一个线性映射,将object(宾语表示的物体)的特征表示映射到同样的语义编码空间中,在这样的特征空间中,存在上述关系,即to是在这样一个特征编码空间中关系的表示。
通过训练权重,将物体的视觉特征映射到所述语义编码空间中。
结合图2,将基于双向LSTM网络以及单向LSTM解码器所得到的物体种类概率分布、双向LSTM网络中输出的物体的特征表示以及步骤S2中得到的物体的位置信息三者信息分为主语(subject)分支和宾语(object)分支;每个分支均将信息拼接起来,并分别输入一个全连接层,输入为特征维度(VGG网络输出为4096),加上物体种类数和坐标数(xmin,xmax,ymin,ymax),输出维度为1024;再利用宾语(object)分支减去主语(subject)分支,输入一个全连接层,输出维度为关系种类数。
S4:根据关系推理网络得到的语义约束信息和注意力网络,得到突出可能存在相关关系的区域和通道特征,进行关系推理分类。
根据步骤S3.3得到的注意力网络的结果送入全连接层进关系分类,同时将步骤3.4中语义空间编码空间约束的结果送入另一个全连接层进行关系分类,将两个分类结果拼接起来,再送入一个全连接层中得到最终分类结果。
利用本发明进行场景图生成的具体方法步骤为:
1、用VG数据集的训练集以及网络模型进行训练,训练过程中观察损失(loss),每训练一个周期(epoch),保持一次权重模型,再用验证集进行验证,观察R@20,R@50和R@100的指标,当损失不再下降并且指标不再提升,就可以终止训练。
其中,R@20,R@50以及R@100是评价指标。R@k(k表示为一个常数,如定义三个指标20,50,100)表示置信度最高点的前k组<主语,谓语,宾语>关系三元组占实际正确的关系三元组的比例。
优选的,训练过程中附加动量的随机梯度下降为优化函数,训练方法采用随机梯度下降加动量的优化器,相比普通的随机梯度下降算法,这种优化器能极大地加快收敛速度,尤其是在噪声较大或者梯度值较小时更为有效。其参数更新规则为:
θ←θ+v
其中,v为相比于普通的随机梯度下降增加的速度向量,α为动量参数,ε为学习速率,为针对权重θ的微分,m为minibatch大小,即当前批次输入的样本图像数量,L(f(x(i);θ),y(i))为损失函数,x(i)为针对权样本中的某个样例,y(i)为对应的标签。优选的,动量α设为0.9,学习速率ε设为0.001,每训练10000步权重衰减一次,权重衰减θ为0.005。
2、用训练好的模型,进行图像场景图的生成:
(1)检测出图像中物体的位置和种类;
(2)对图像中物体两两之间的关系进行推理分类。
3、对得到的基于语义编码模块和注意力机制的模型进行对比分析。
经过对比和分析,相比于目前已有的其他方法,用语义编码模块和注意力机制相结合的方法有更高的关系推理精度,并且在关系过程中不引入无用信息,网络也比较简单,应用前景十分广阔。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。