【技术实现步骤摘要】
一种基于解耦策略的全场景图生成方法
[0001]本专利技术涉及视觉理解领域,尤其提出一种基于解耦策略(Decoupling Policies)的全场景图生成(Panoptic Scene Graph Generation)方法。
技术介绍
[0002]场景图生成(Scene Graph Generation)任务的目标是从给定的图像生成一个图结构的表示,以抽象出以边界框为基础的对象及其成对关系。场景图旨在促进对图像中复杂场景的理解,并具有广泛的下游应用潜力,如图像检索、视觉推理、视觉问答、图像字幕、结构化图像生成和绘制等。
[0003]现有的研究从目标检测的角度解决了场景图生成,即使用边界框检测物体,然后预测它们的成对关系。然而,这种基于边界框的方法导致了以下几个问题:首先,边界框仅提供对象的粗略定位,并且通常包含属于不同对象或类别的噪声;其次,边界框通常不能覆盖图像的整个场景;第三,目前的场景图生成数据集中往往包含冗余类和无实际意义的关系,这些问题阻碍了场景图生成的进步。相比之下,从全景分割(Panoptic Segmentation)的角度完成场景理解成为了一个更好的选择。全景分割任务要求必须为图像的每个像素分配一个语义标签和一个id,具有相同标签和id的像素属于同一对象,对于背景类标签,则忽略其id。理想情况下,物体的位置表示应该是清晰和精确的,显然,全景分割可以更加灵活和准确的表示出物体与背景在图片中的位置,符合场景理解这一目标。因此,在这项工作中引入全场景图生成这一个新的任务,要求模型基于全景分割而
【技术保护点】
【技术特征摘要】
1.一种基于解耦策略的全场景图生成方法,其特征在于,按照以下步骤进行:步骤1):数据集的预处理及划分采用psgdataset作为训练与测试数据集,对数据集中的图片进行预处理以及划分;步骤2):使用训练好的全景分割模型DETR对图片进行全景分割并提取各个分割块的特征对于一张输入的图片,模型首先会将整张图片经过残差网络ResNet101对图片进行初步的特征提取;然后采用经典的Transformer结构将上一步得到的图片特征与图片的位置编码进行相加,并输入Transformer Encoder中进行更深层次的特征提取,从而得到包含整张图片特征的向量表示;在解码阶段,将编码器得到的向量表示分别输入到两个Transformer Decoder中,其中,一个解码器作为物体对象解码器Things Decoder,另一个解码器作为背景对象解码器StuffDecoder,物体对象解码器的输出为n
t
个物体对象的特征表示,n
t
是预定义的目标查询的个数,代码中默认为100,背景对象解码器的输出为53个背景对象的特征表示;最后将得到的物体对象的特征表示和背景对象的特征表示分别进行一定的线性转换得到对应的分类、边界框以及分别作为主语和宾语时的查询匹配向量,共得到作为主语时的查询匹配向量Query
sub
‑
thjngs
、Query
sub
‑
stuff
和作为宾语时的查询匹配向量Query
obj
‑
things
、Query
obj
‑
stuff
,其中,sub表示作为主语,obj表示作为宾语;步骤3):使用关系解码器提取谓词特征该步骤本质与步骤2)中的解码器部分相同,同样是将编码器得到的向量表示输入到Transformer Decoder中,该解码器作为关系解码器Relation Decoder,经过训练就可以得到n
r
个谓词的表示特征,n
r
是预定义的关系查询的个数,代码中默认为100,最后,将得到的谓词特征表示进过一定的线性转换,得到用于进行匹配的谓词查询匹配向量Query
rel
;步骤4):将步骤2)得到主语和宾语的查询匹配向量的和步骤3)得到的谓词的查询匹配向量进行关系匹配将得到的查询匹配向量以Query
sub
‑
things
‑
Query
rel
‑
Query
obj
‑
stuff
、Query
sub
‑
things
‑
Query
rel
‑
Query
obj
‑
things
、Query
sub
‑
stuff
‑
Query
rel
‑
Query
obj
‑
things
、Query
sub
‑
stuff
‑
Query
rel
‑
Query
obj
‑
stuff
的形式组合分别进行匹配训练,将作为谓词的查询匹配向量与作为主语的查询匹配向量的转置进行相乘,得到的分数即为主语和谓语的匹配分数;同理将作为谓词的查询匹配向量与作为宾语的查询匹配向量的转置进行相乘,得到的分数即为宾语和谓语的匹配分数,匹配分数越大,则在图片中出现此关系三元组的置信度越高,取最大匹配分数所在的下标为检测到的物体或背景的下标;步骤5):处理数据集中的标注信息在psgdataset数据集的标注中,共有133种可以检测到的对象;其中,前80种为物体对象,后53种为背景对象,将数据集标注信息中的三元组按照物体对象
‑
背景对象、物体对象
‑
物体对象、背景对象
‑
物体对象、背景对象
‑
背景对象这四种不同关系类型分为四组,与预测出的四种关系三元组分别对应;步骤6):将检测到的物体对象与真实值进行二分匹配在步骤2)中检测到的n
t
个目标与步骤5)中得到的物体对象进行二分匹配,找到代价最小的预测结果;其中代价由边界框的L1 loss和GIoU loss组成,最终可得到与真实值中物体对象个数相同的预测结果;
步骤7):将检测到关系三元组与真实值进行二分匹配本步骤思想上与步骤6)相同,目的是从检测结果中筛选出与真实值中关系三元组数量相同的关系三元组,筛选出的关系三元组与真实值的代价最小;步骤8):构造损失函数损失函数由两部分组成:一部分为图片中检测到的对象位置与真实值的损失,另一部分为关系三元组的预测类别与其标注真实值的损失;步骤9):训练深度神经网络模型根据步骤8)中的损失函数产生的损失值,利用反向传播算法对深度神经网络的模型参数进行梯度回传,不断优化,直至整个网络模型收敛;步骤10):深度神经网络模预测值计算将主语、谓语以及宾语的分类分数向量相乘作为总分数进行排序,选择最高分数对应的三元组作为其预测三元组;调整对应候选框以及分割块的排序使其与得到的三元组对应。2.根据权利要求1所述的一种基于解耦策略的全场景图生成方法,其特征在于:步骤1)具体实现如下:psgdataset数据集中共有常见的133中可检测的对象类别,其中前80种为物体对象,后53种为背景对象,还包括常见的56个关系类别,共有46697张图片,将45697张图片用于训练和验证,剩下1000张用于测试。3.根据权利要求1所述的一种基于解耦策略的全场景图生成方法,其特征在于:步骤2)所述的用全景分割网络对图像提取特征,具体如下:2
‑
1.使用残差网络ResNet101初步提取特征并进行处理将整张预处理后的图片输入到残差网络ResNet101中,将残差网络中最后一层conv5_x的输出特征和位置编码分别进行flatten操作,具体操作如下:src=src.flatten
ꢀꢀꢀꢀ
i公式1)pos_embed=pos_embed.flatten
ꢀꢀꢀꢀ
(公式2)src为从残差网络中提取的特征,pos_embed为位置编码,编码方式为正弦编码,分别对x轴方向和y轴方向进行位置编码,计算公式如下:x轴方向和y轴方向进行位置编码,计算公式如下:其中,pos表示嵌入向量在输入图片中的位置,i表示嵌入向量中的维度索引,d
model
是一个超参数,在代码中默认为512,Transformer Encoder中,会将处理后的输出特征和位置编码相加;2
‑
2.Transformer Encoder进一步提取特征在Transformer Encoder中,将上一步得到的特征F与位置编码P相加作为Transformer Encoder的Query与Key,将特征src作为Value,计算公式如下:Q=K=F+P
ꢀꢀꢀꢀ
(公式5)V=F
ꢀꢀꢀꢀ
(公式6)经过Transformer Encoder进一步的特征提取,可以得到对整张图片的更深层次的向量表示M;
2
‑
3.Things Decoder与StuffDecoder从M中解码分别得到对应的特征表示Transformer Decoder有两个模块组合而成,对于Multi
‑
Head Self
‑
Attention,输入的Query、Key以及Value分别为:Q=K=target+query_pos
ꢀꢀꢀꢀ
(公式7)V=target
ꢀꢀꢀꢀ
(公式8)对于Multi
‑
Head Attention,输入的Query、Key以及Value分别为:Q=target+query_pos
ꢀꢀꢀꢀ
(公式9)K=M+P
ꢀꢀꢀꢀ
(公式10)V=M
ꢀꢀꢀꢀ
(公式11)其中,target是随机初始化得到的向量,经过迭代训练可得到要检测对象的特征;query_pos也是随...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。