CN115909173B - 物体跟踪方法、跟踪模型训练方法、装置、设备和介质 - Google Patents

物体跟踪方法、跟踪模型训练方法、装置、设备和介质 Download PDF

Info

Publication number
CN115909173B
CN115909173B CN202310010750.6A CN202310010750A CN115909173B CN 115909173 B CN115909173 B CN 115909173B CN 202310010750 A CN202310010750 A CN 202310010750A CN 115909173 B CN115909173 B CN 115909173B
Authority
CN
China
Prior art keywords
frame
video frame
current
historical
image
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
Application number
CN202310010750.6A
Other languages
English (en)
Other versions
CN115909173A (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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202310010750.6A priority Critical patent/CN115909173B/zh
Publication of CN115909173A publication Critical patent/CN115909173A/zh
Application granted granted Critical
Publication of CN115909173B publication Critical patent/CN115909173B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Analysis (AREA)

Abstract

本公开提供了一种物体跟踪方法、跟踪模型训练方法、装置、设备和介质,涉及计算机视觉、图像处理、深度学习等人工智能技术领域,可应用于自动驾驶、智慧城市等场景。具体实现方案为:获取用于训练物体跟踪模型的多个样本视频;在任一视频帧作为当前视频帧,对所述物体跟踪模型进行训练的过程中,将所述当前视频帧的图像数据和初始化的物体特征向量,输入所述物体跟踪模型,以输出识别到的物体,作为物体识别结果;其中,所述当前视频帧的初始化的物体特征向量,为基于至少一个历史视频帧中已识别物体的物体特征向量确定的;根据所述物体识别结果,基于预设损失函数对物体跟踪模型进行更新。实施例的技术方案,能够使得物体识别结果更加准确。

Description

物体跟踪方法、跟踪模型训练方法、装置、设备和介质
技术领域
本公开涉及计算机视觉、图像处理、深度学习等人工智能技术领域,可应用于自动驾驶、智慧城市等场景。
背景技术
自动驾驶技术中,需要对车辆周边的物体进行识别和跟踪,从而为后续的物体轨迹预测和车辆控制提供依据。
现有的物体跟踪技术,主要是基于图像或雷达点云来识别和跟踪物体。但是,对于物体遮挡情况的处理都相对较差,影响了物体跟踪的准确性。
发明内容
本公开提供了一种物体跟踪方法、跟踪模型训练方法、装置、设备和介质。
根据本公开的一方面,提供了一种物体跟踪模型的训练方法,包括:
获取用于训练物体跟踪模型的多个样本视频,每个所述样本视频包括至少两个视频帧;
在任一视频帧作为当前视频帧,对所述物体跟踪模型进行训练的过程中,将所述当前视频帧的图像数据和初始化的物体特征向量,输入所述物体跟踪模型,以输出识别到的物体,作为物体识别结果;其中,所述当前视频帧的初始化的物体特征向量,为基于至少一个历史视频帧中已识别物体的物体特征向量确定的;
根据所述物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新。
根据本公开的另一方面,提供了一种物体跟踪方法,包括:
获取通过至少一个摄像头采集到的输入视频;其中,每个摄像头采集至少两个视频帧;
将所述输入视频,输入本公开任一实施例所提供的物体跟踪模型的训练方法所训练得到的物体跟踪模型,以输出从所述输入视频中识别到的物体跟踪结果。
根据本公开的另一方面,提供了一种物体跟踪模型的训练装置,包括:
样本视频获取模块,用于获取用于训练物体跟踪模型的多个样本视频,每个所述样本视频包括至少两个视频帧;
物体识别模块,用于在任一视频帧作为当前视频帧,对所述物体跟踪模型进行训练的过程中,将所述当前视频帧的图像数据和初始化的物体特征向量,输入所述物体跟踪模型,以输出识别到的物体,作为物体识别结果;其中,所述当前视频帧的初始化的物体特征向量,为基于至少一个历史视频帧中已识别物体的物体特征向量确定的;
模型更新模块,用于根据所述物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新。
根据本公开的另一方面,提供了一种物体跟踪装置,包括:
输入视频获取模块,用于获取通过至少一个摄像头采集到的输入视频;其中,每个摄像头采集至少两个视频帧;
物体跟踪模块,用于将所述输入视频,输入本公开任一实施例所提供的物体跟踪模型的训练方法所训练得到的物体跟踪模型,以输出从所述输入视频中识别到的物体跟踪结果。
根据本公开的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开任一实施例所提供的物体跟踪模型的训练方法或本公开任一实施例所提供的物体跟踪方法。
根据本公开的另一方面,提供了存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据本公开任一实施例所提供的物体跟踪模型的训练方法或本公开任一实施例所提供的物体跟踪方法。
根据本公开的另一方面,提供了计算机程序产品,包括计算机程序/指令,所述计算机程序/指令在被处理器执行时实现根据本公开任一实施例所提供的物体跟踪模型的训练方法或本公开任一实施例所提供的物体跟踪方法。
本公开实施例的技术方案,能够在物体跟踪模型的训练过程中,引入基于历史已识别物体的物体特征所确定的物体特征向量,参与对物体进行识别的过程,使得物体识别结果更加准确。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1为本公开实施例提供的一种物体跟踪模型的训练方法的流程图;
图2A为本公开实施例提供了一种物体跟踪模型的训练方法的流程图;
图2B为本公开实施例所适用的一种模型架构示意图;
图3为本公开实施例提供的一种物体跟踪模型的训练方法的流程图;
图4A为本公开实施例提供的一种物体跟踪模型的训练方法的流程图;
图4B为本公开实施例所适用的另一种模型架构示意图;
图5为本公开实施例提供的一种物体跟踪模型的训练方法的流程图;
图6为本公开实施例提供的一种物体跟踪模型的训练方法的流程图;
图7为本公开实施例提供的一种物体跟踪方法的流程图;
图8为本公开实施例提供的一种物体跟踪模型的训练装置的结构示意图;
图9为本公开实施例提供的一种物体跟踪装置的结构示意图;
图10示出了可以用来实施本公开的实施例的示例电子设备的示意性框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1为本公开实施例所提供的一种物体跟踪模型的训练方法的流程图,该方法用于对物体跟踪模型的训练,该物体跟踪模型用于基于图像识别技术,识别视频帧中的物体,并将连续视频帧中的物体进行关联,以完成物体跟踪的功能。本公开实施例可以由物体跟踪模型的训练装置来执行,该装置可以由软件和/或硬件实现,配置于具备存储和计算处理能力的电子设备中。
本实施例的方法,包括:
步骤110、获取用于训练物体跟踪模型的多个样本视频,每个所述样本视频包括至少两个视频帧;
步骤120、在任一视频帧作为当前视频帧,对所述物体跟踪模型进行训练的过程中,将所述当前视频帧的图像数据和初始化的物体特征向量,输入所述物体跟踪模型,以输出识别到的物体,作为物体识别结果;其中,所述当前视频帧的初始化的物体特征向量,为基于至少一个历史视频帧中已识别物体的物体特征向量确定的;
步骤130、根据所述物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新。
本实施例的方案中,首先获取用于训练模型的样本视频,每个样本视频包括连续的至少两个视频帧,以反映视频图像中物体的连续变化。样本视频的数量通常为多个,以便对物体跟踪模型进行有效训练。
可选的,所述样本视频采用安装在车身周围的多个环视摄像头进行采集,所述视频帧优选是为RGB图像。在自动驾驶技术领域存在物体跟踪需求,可以在车上是安装一个或多个摄像头,摄像头可以是环视摄像头,以便对车辆周围范围的图像进行充分采集。当然,本领域技术人员可以理解,本公开实施例的技术方案所训练的物体跟踪模型也可以适用于其他场景,例如楼宇监控摄像头采集的视频等。
采用样本视频对物体跟踪模型进行训练的过程中,每个样本视频有多个视频帧输入物体跟踪模型进行训练,直至模型收敛再进入下一个样本视频对模型的训练。在一个样本视频的训练过程中,每个视频帧会顺序的作为当前视频帧来对模型进行训练,在任一视频帧作为当前视频帧,对所述物体跟踪模型进行训练的过程中,除输入视频帧的图像数据之外,还会向物体跟踪模型输入当前视频帧的初始化的物体特征向量。当前视频帧的初始化的物体特征向量,为基于至少一个历史视频帧中已识别物体的物体特征向量确定的。即,每个初始化的物体特征向量中,均反映了物体级别的物体特征,并且为历史视频帧中的已识别物体。由此,在基于当前视频帧进行训练的过程中,引入了已识别物体的、反映变化时序的物体特征,所以能够使物体跟踪模型更有效的反映出物体特征的连续变化过程。优选的,样本视频中能够反映各种物体的连续变化,且实际上物体连续变化规律类似的物体类别是有限的,所以训练完成的物体特征向量,能够泛化反映各类物体的连续变化规律。例如,在自动驾驶技术领域,物体的类别一般可分为大车、小车、行人和其他障碍物。
本公开实施例的技术方案,在模型训练完成后,该物体特征向量反映了多个历史帧中各个物体的特征连续变化规律,也为后续训练好的物体跟踪模型进行物体识别跟踪时,提供了有力依据。因此,通过引入物体特征向量参与训练,能够使得模型训练过程反映物体级别的变化规律,也使得训练完成的物体跟踪模型,能够更加准确的识别和跟踪物体。
在本实施例中,可选的是,所述物体特征向量中的每个向量值,用于表征每个物体的物体特征,所述当前视频帧的初始化的物体特征基于所述物体在至少一个视频帧中的物体特征,采用设定融合方法而确定。可预先设定物体特征向量的向量维度,例如为500,每个向量值代表一个物体,因此足够大的维度能够用于表征同时出现的物体。每个物体的物体特征可以是基于一个或多个视频帧中的物体特征融合确定的。对于样本视频来说,可以获知哪些物体在连续多个视频帧中均有出现,是相互关联的。因此,可以将每个物体在多个视频帧中的物体特征进行融合,由此反映物体特征的变化规律。设定融合方法可以是自注意力交互方法,通过自注意力交互,能够使得各个物体特征之间彼此关注,由此确定重要物体特征。
在上述技术方案的基础上,可以通过多种方式来多个各个视频帧中物体和物体特征,例如,样本视频为经过标注的、已知物体跟踪结果的视频,因此可从样本视频中获得各视频帧中的物体。优选的,当前视频帧的初始化的物体特征向量的确定过程可以包括:
获取所述物体跟踪模型针对所述历史视频帧训练后输出的已识别物体的物体特征;
将所述当前视频帧在样本视频中已标注的物体,作为所述当前视频帧中待识别物体,并对所述待识别物体的物体特征进行初始化;
将所述已识别物体和待识别物体中的相同物体合并为目标物体;
根据所述目标物体在至少一帧中的物体特征,确定所述目标物体的物体特征;
根据至少一个所述目标物体的物体特征,确定所述当前视频帧的初始化的物体特征向量。
上述确定初始化的物体特征向量的过程中,通过物体跟踪模型对历史视频帧的输出结果,来确定已识别物体以及各个已识别物体的物体特征。对于任一视频帧,对物体跟踪模型训练至收敛之后,就可以获得物体识别结果,其中包括了物体标识(ID)以及物体特征,物体标识是能够唯一标识各物体的。对于当前视频帧而言,可以从样本视频的已标注结果中获知存在哪些物体,以及物体标识。当前视频帧中物体的物体特征还未通过物体跟踪模型来识别确定,可以进行初始化,即,当前视频帧中待识别物体的物体特征可以通过任意初始化方式来确定,例如随机初始化物体特征值。对于当前视频帧中的物体,可以是历史视频帧中的已识别物体,即有相同的物体标识;也可以是新出现的物体,则为新物体分配新的物体标识。可以将所述已识别物体和待识别物体中的相同物体合并为目标物体,不属于相同物体的已识别物体和待识别物体,可以单独作为目标物体。根据所述目标物体在至少一帧中的物体特征,可以确定所述目标物体的物体特征,例如采用前述的自注意力交互方法来融合目标物体在多帧中的物体特征。
可选的,根据所述物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新包括:
根据所述当前视频帧的物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新,至达到收敛条件时,获取所述当前视频帧的更新后的物体特征向量;
从所述当前视频帧的更新后的物体特征向量中获取物体特征,记录在物体特征记忆池中。
在针对当前视频帧进行训练的过程中,会根据当前视频帧的样本标注结果来不断更新模型的参数,当前视频帧的初始化的物体特征向量也是被更新调整的对象。经过多次更新调整后,至整个物体跟踪模型能够正确得到当前视频帧的物体识别结果,即达到收敛条件时,此时初始化的物体特征向量已经调整为更新后的物体特征向量。从物体特征向量中获取物体特征,记录在物体特征记忆池中,以作为历史视频帧中已识别物体的物体特征,供后续视频帧使用。优选可以物体为单位,分别存储物体特征。
图2A为本公开实施例提供了一种物体跟踪模型的训练方法的流程图,本实施例以前述实施例为基础,提供了物体跟踪模型的优选架构方案以及训练过程。具体的,所述物体跟踪模型包括骨干网络、编码模块、物体特征向量和解码模块,在训练过程中,需要对模型各部分中的参数进行更新调整,直至达到收敛条件。
优选的是,所述物体跟踪模型为Transformer模型,所述物体特征向量作为输入所述解码模块的搜索向量,所述图像隐层向量分别作为输入所述解码模块的键向量和值向量。
其中,搜索向量可表示为Query向量,键向量可表示为Key向量,值向量可表示为Value向量。
Transformer模型的典型结构是包括编码模块和解码模块。编码模块中可包括多层编码器,每个编码器可包括卷积神经网络,编码模块用于将序列化输入的图像特征转换为图像隐层向量。解码模块中包括多层解码器,每个解码器可包括卷积神经网络和自注意力层,能够将图像隐层向量转化为序列化的物体特征,从而,Transformer模型能够实现从图像到物体的转换识别。对于Transformer模型编码模块和解码模块的内部层次结构,本公开实施例不进行限制。在解码模块中,需要输入Query向量、Key向量、Value向量。在本公开实施例中,物体特征向量可以作为Query向量输入解码模块,编码模块输出的图像隐层向量,可以既作为Key向量,也作为Value向量,输入解码模块。所以,体现物体特征的Query向量可以在解码模块中与Key向量所体现的图像特征进行相似度计算,反映两者之间的关系。
基于上述架构的物体跟踪模型所实现的训练方法包括:
步骤210、获取用于训练物体跟踪模型的多个样本视频,每个所述样本视频包括至少两个视频帧;
步骤220、将视频帧输入骨干网络,以提取视频帧的图像特征;
骨干网络能够以多视角图像作为输入,提取图像特征。假设有N个环视摄像头,那么多视角视频的总数为N,将N个视频帧的图像按照顺序进行通道串接送入骨干网络。骨干网络可以有多种不同的选择,例如可以选用残差网络(ResNet-50)。如图2B所示,骨干网络输出为多视角的2D特征图,作为当前视频帧的图像特征。例如,每个摄像头的视频帧图像为H*W*3,H为图像像素的行数即高度,W为图像像素的列数即宽度,3为RGB三个色彩通道。N个视频帧经通道拼接后,形成N *H*W*3的数据。经过骨干网络提取特征之后,输出的图像特征为N *H*W*C维度的数据,其中,C为图像特征的通道维度,例如为256,代表图像中该位置像素点的多维度特征。
步骤230、在任一视频帧作为当前视频帧,对所述物体跟踪模型进行训练的过程中,将所述当前视频帧通过所述骨干网络提取的图像特征,输入编码模块中,以输出当前视频帧中图像对应的图像隐层向量;
步骤240、根据至少一个历史视频帧中已识别物体的物体特征向量,确定初始化的物体特征向量;
其中,所述历史视频帧为所述样本视频中位于所述当前视频帧前序的视频帧;所述当前视频帧的初始化的物体特征向量,为基于至少一个历史视频帧中已识别物体的物体特征向量确定的;
当前视频帧的初始化的物体特征向量确定方式,可参照前述实施例所介绍的方式。从物体记忆池中提取历史视频帧已识别物体的物体特征,与当前视频帧中待识别物体的初始化物体特征,进行自注意力交互(Self-attention),形成初始化的物体特征向量。如图2B所示,物体记忆池中记录有多个物体标识的物体特征。优选可以设置物体记忆池中存储当前视频帧(t帧)前序T帧的物体特征。
步骤250、将所述当前视频帧的图像隐层向量和所述初始化的物体特征向量,输入所述解码模块;
步骤260、根据所述解码模块的输出数据识别所述当前视频帧中的物体,作为物体识别结果;
步骤270、根据所述物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新。
本实施例的技术方案,采用自动编解码模块架构的模型,如Transformer模型作为物体跟踪模型,能够利用模型中Query向量所发挥的作用,将物体特征向量通过Query向量输入模型的解码模块,与图像隐层向量结合来训练出能够建立图像与物体之间关系的物体跟踪模型。
图3为本公开实施例提供的一种物体跟踪模型的训练方法的流程图。本实施例在前述实施例的基础上,进一步在图像特征中融合了物体的三维空间特征。可选的,将所述当前视频帧通过所述骨干网络提取的图像特征,输入编码模块中之前,还包括:获取所述当前视频帧中图像的三维空间特征;将所述当前视频帧的三维空间特征和图像特征进行融合,以形成空间图像特征,作为输入所述编码模块的图像特征。
如图3所示,物体跟踪模型的训练方法包括:
步骤310、获取用于训练物体跟踪模型的多个样本视频,每个所述样本视频包括至少两个视频帧;
步骤320、将视频帧输入骨干网络,以提取视频帧的图像特征;
步骤330、获取各视频帧中图像的三维空间特征;
对于各视频帧的三维空间特征,可先于图像特征获取;可以按照视频帧顺序,随着训练过程陆续获取,也可以一次性获取,本实施例对此不限定。
步骤340、将各视频帧的三维空间特征和图像特征进行融合,以形成空间图像特征,作为输入所述编码模块的图像特征;
步骤350、在任一视频帧作为当前视频帧,对所述物体跟踪模型进行训练的过程中,将所述当前视频帧通过所述骨干网络提取的空间图像特征,输入编码模块中,以输出当前视频帧中图像对应的图像隐层向量;
基于前述操作的处理,本实施例中输入编码模块的图像特征为融合了三维空间特征的空间图像特征。
图像特征与三维空间特征的通道维度不一致,可通过1*1卷积来统一通道维度进行融合。可选的是,将所述当前视频帧的三维空间特征和图像特征进行融合,以形成空间图像特征包括:
将所述当前视频帧的图像特征,和所述当前视频帧中图像的三维空间特征,分别进行维度调整,以调整至相同维度;
将调整维度后的图像特征和三维空间特征进行拼接,以形成空间图像特征。
例如,图像特征的维度是N*H*W*C,三维空间特征的维度是H* H*W*4D,4D表征三维空间特征的通道数量。可以将图像特征和三维空间特征,分别通过1*1卷积模块进行处理,形成维度为N*H*W*P,P代表统一后的通道维度。而后进行图像特征和三维空间特征的拼接,以实现融合。经过处理后,空间图像特征不仅能反映像素点所呈现的特征,还能反映各像素点的空间位置特征。
步骤360、根据至少一个历史视频帧中已识别物体的物体特征向量,确定初始化的物体特征向量;
步骤370、将所述当前视频帧的图像隐层向量和所述初始化的物体特征向量,输入所述解码模块;
步骤380、根据所述解码模块的输出数据识别所述当前视频帧中的物体,作为物体识别结果;
步骤390、根据所述物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新。
本实施例的技术方案,在图像特征中引入了三维空间特征,因此在识别物体时,不仅能通过图像的像素点的像素值来识别,还能结合像素点的位置信息,使得物体的识别更加准确。
图4A为本公开实施例提供的一种物体跟踪模型的训练方法的流程图,本实施例以前述实施例为基础,进一步结合历史视频帧和当前视频帧的图像特征来进行物体识别跟踪,优选是,结合历史视频帧和当前视频帧的时序性的空间图像特征。具体是,将所述当前视频帧通过所述骨干网络提取的图像特征,输入编码模块中之前,还包括:
获取至少一个历史视频帧中图像的三维空间特征,与所述当前视频帧中图像的三维空间特征进行拼接,以形成时序三维空间特征;
获取至少一个历史视频帧的图像特征,与所述当前视频帧的图像特征进行拼接,以形成时序图像特征;
将所述当前视频帧的时序三维空间特征和时序图像特征进行融合,以形成时序空间图像特征,作为输入所述编码模块的图像特征。
如图4A所示,该物体跟踪模型的训练方法包括:
步骤410、获取用于训练物体跟踪模型的多个样本视频,每个所述样本视频包括至少两个视频帧;
步骤420、将视频帧输入骨干网络,以提取视频帧的图像特征;
如图4B所示,可选的,将各所述视频帧的图像特征,记录至图像特征记忆池中。
步骤430、获取各视频帧中图像的三维空间特征;
上述操作,相当于获取了至少一个历史视频帧中图像的三维空间特征。优选是,将获取到的各视频帧的三维空间特征记录至空间特征记忆池中,如图4B所示。图像特征记忆池和空间特征记忆池,均为针对图像侧进行记录的记忆空间。
本公开实施,可使用先进先出的方式设置两个记忆池,分别保存图像侧记忆池和物体侧记忆池。图像侧记忆池保存最邻近的T帧(t-1到t-T)的骨干网络输出的图像特征和三维空间特征。物体侧记忆池保存最邻近的T帧(t-1到t-T)的Transformer模型输出的、与物体标识相对应的、物体query特征。
步骤440、针对任一样本视频,将至少一个历史视频帧中图像的三维空间特征,与所述当前视频帧中图像的三维空间特征进行拼接,以形成时序三维空间特征;
步骤450、针对任一样本视频,获取至少一个历史视频帧的图像特征,与所述当前视频帧的图像特征进行拼接,以形成时序图像特征;
步骤460、将所述当前视频帧的时序三维空间特征和时序图像特征进行融合,以形成时序空间图像特征,作为输入所述编码模块的图像特征;
步骤470、在任一视频帧作为当前视频帧,对所述物体跟踪模型进行训练的过程中,将所述当前视频帧通过所述骨干网络提取的时序空间图像特征,输入编码模块中,以输出当前视频帧中图像对应的图像隐层向量;
基于前述操作的处理,本实施例中输入编码模块的图像特征为融合了历史视频帧的时序、以及三维空间特征的时序空间图像特征。
时序图像特征与时序三维空间特征的通道维度不一致,可通过1*1卷积来统一通道维度进行融合。可选的是,将所述当前视频帧的时序三维空间特征和时序图像特征进行融合,以形成时序空间图像特征包括:
将所述当前视频帧的时序图像特征,和所述当前视频帧中图像的时序三维空间特征,分别进行维度调整,以调整至相同维度;
将调整维度后的时序图像特征和时序三维空间特征进行拼接,以形成时序空间图像特征。
例如,如图4B所示,时序图像特征的维度是N*H*W*(C*T),T代表T个视频帧,时序三维空间特征的维度是H* H*W*(4D*T)。可以将时序图像特征和三维空间特征,分别通过1*1卷积模块进行处理,形成维度为N*H*W*P,P代表统一后的通道维度。而后进行时序图像特征和时序三维空间特征的拼接,以实现融合。经过处理后,时序空间图像特征不仅能反映像素点所呈现的特征,还能反映各像素点的空间位置特征,以及能够反映在多帧中连续变化的特征。
步骤480、根据至少一个历史视频帧中已识别物体的物体特征向量,确定所述初始化的物体特征向量;
步骤490、将所述当前视频帧的图像隐层向量和初始化的物体特征向量,输入所述解码模块;
步骤4100、根据所述解码模块的输出数据识别所述当前视频帧中的物体,作为物体识别结果;
步骤4110、根据所述物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新。
本实施例的技术方案,在编码模块所输入的图像特征中,同时融合了空间特征和时序特征,由此能够充分考虑物体在视频帧中的位置随时间的变化,能够解决物体被遮挡情况下的准确识别问题。
在上述实施例中,当图像中融合了三维空间特征时,可以设置物体向量特征也反映物体的位置特征,即,所述物体特征向量中的物体特征,优选为物体在三维空间坐标系下的位置特征。由此,能够进一步向解码模块输入体现物体级别的位置特征的信息,让编码模块识别的图像位置特征与物体位置特征进行相关性识别,提高最终模型识别物体的准确性。
物体在三维空间坐标下的位置特征,可以用M*L维度的向量表示。M为预设足够大的物体数量,例如500,L为表征物体位置特征的维度,例如3,即X、Y、Z的坐标值,表征物体在三维空间中的位置。物体特征向量可以经过维度映射后,形成与图像隐层向量相同通道维度的数据输入解码模块。
在上述实施例的技术方案中,可通过多种方式来确定图像的三维空间特征。可选的,根据拍摄各所述视频帧的摄像头的内参外参矩阵,确定所述视频帧中图像像素点所对应的三维空间特征,并记录至空间特征记忆池中。内参表征图像坐标系与摄像头坐标系之间的对应关系,外参表征摄像头坐标系与三维空间坐标系之间的对应关系,一般均可预先获得。所以,能够获得各摄像头的内参外参矩阵,以转换获得图像的三维空间特征。
本公开实施例中,进一步提供一种利用摄像头视锥空间,转换获得三维空间特征的实现方式。可选的,根据拍摄所述当前视频帧的摄像头的内参外参矩阵,确定所述当前视频帧中图像像素点所对应的三维空间特征包括:
将所述当前视频帧中图像的像素点,转换至所述摄像头的视锥空间坐标系下;
根据所述内参外参矩阵,将图像的像素点在所述视锥空间坐标系下的坐标转换为三维空间坐标下的坐标,作为所述三维空间特征。
建立3D空间的坐标和2D图像的像素点之间的对应关系,需要用到环视摄像头的内 参和外参。首先将2D图像扩展成视锥空间,假设2D图像大小为H*W,视锥空间的大小为H*W* D。其中,D为视锥空间中,预先将摄像头所拍摄范围划分成D个深度区段。通过摄像头的内参 和外参将3D空间中的坐标投影到H*W*D的视锥空间中,假设视锥空间中每个点的坐标为,其中为图像中的2D像素坐标,dj为人为划分的深度区 段的坐标值,即属于哪个深度区段。每个视锥空间点对应的3D空间坐标为,可以由摄像头投影得到。假设合并后的摄像头的内参外参矩阵为,则可通过相机反投影建立视锥空间和3D空间坐标的对应关系,如下公式所示, 每个摄像头都类似操作:
基于上述操作,可以基于摄像头拍摄时的视锥坐标,获取图像所对应的三维空间特征,维度是H*W*4D。其中,4D表示在所属深度区段中的X、Y、Z轴坐标值。
基于上述技术方案,可利用摄像头的内参外参矩阵来转换获得2D图像对应的三维空间特征。三维空间特征表征了2D图像的像素点在三维空间中的位置,可以用X、Y、Z轴坐标值的方式来体现,也可以用X、Y、Z轴坐标值结合视锥范围的深度区段来体现,或者也可以采用其他能够体现三维空间中位置的坐标表达形式来体现。
图5为本公开实施例提供的一种物体跟踪模型的训练方法的流程图,本实施例以前述实施例为基础,提供了根据解码模块的输出数据来识别物体数据的具体方式。本公开实施例的物体跟踪模型中包括对于解码模块的输出数据进行属性识别的属性输出头,在本实施例中,具体包括三维属性输出头和/或跟踪属性输出头,从而能够从多个方面输出物体的属性,用于进行物体关联,从而形成物体在多帧中的跟踪轨迹。
如图5所示,本实施例的方法包括:
步骤510、获取用于训练物体跟踪模型的多个样本视频,每个所述样本视频包括至少两个视频帧;
步骤520、在任一视频帧作为当前视频帧,对所述物体跟踪模型进行训练的过程中,将所述当前视频帧通过所述骨干网络提取的图像特征,输入编码模块中,以输出当前视频帧中图像对应的图像隐层向量;
步骤530、根据至少一个历史视频帧中已识别物体的物体特征向量,确定初始化的物体特征向量;
其中,所述历史视频帧为所述样本视频中位于所述当前视频帧前序的视频帧。
步骤540、将所述当前视频帧的图像隐层向量和所述初始化的物体特征向量,输入所述解码模块;
步骤550、根据所述解码模块的输出数据识别所述当前视频帧中的物体,作为物体识别结果;
可选的是,根据所述解码模块的输出数据识别所述当前视频帧中的物体,作为物体识别结果包括:
将所述解码模块的输出数据,输入三维属性输出头,以识别所述当前视频帧中物体的物体类别和三维包围框数据;
三维属性输出头用于输出物体类别和三维包围框数据。物体类别是预设确定的物体分类,可根据模型用于跟踪物体的场景来确定。例如,在自动驾驶场景中,物体的类别可分为大车、小车、行人和其他障碍物等。三维包围框数据可以是能够将物体包围在其中的最小立方体,能够体现物体的位置和大概轮廓。优选的是,三维包围框数据包括物体的长度、宽度、高度、中心点三维坐标和朝向角,所述朝向角为物体相对于标准坐标轴的夹角。三维包围框数据可包括7个维度的数据。其中,中心点三维坐标可以是X、Y、Z轴的坐标。Y轴可作为标准坐标轴,如在自动驾驶车辆中,Y轴可设定为车辆行进方向。X轴是水平面内与Y轴垂直的坐标轴,Z轴是垂直于X轴和Y轴的,一般为车辆的高度方向。朝向角可以为被识别物体与Y轴之间的夹角。
三维属性输出头可以包括两个多层感知机,分别用于识别物体类别和物体的三维包围框数据。
根据所述物体的物体类别和三维包围框数据,进行物体识别,作为物体识别结果。
根据物体类别和三维包围框数据,可以进行物体识别。物体识别至少包括将当前视频帧中所识别到的候选物体,与经过历时视频帧处理后的已识别物体之间建立关联,形成物体在多帧中的跟踪轨迹。如果候选物体不能与已识别物体建立关联的,则可以创建一个新的物体标识,表明是新出现的物体。建立了关联的物体与新建的物体,以及各个物体的物体特征,共同构成了物体识别结果。
可选的是,根据所述解码模块的输出数据识别所述当前视频帧中的物体,作为物体识别结果包括:
将所述解码模块的输出数据,输入跟踪属性输出头,以识别物体的外观特征和速度特征;
上述方案中,物体的跟踪属性可包括物体的外观特征和速度特征,由跟踪属性输出头来提取。其中,速度特征表征物体的移动速度,可以为所述物体在单位时间内,位于水平面内两个垂直轴向的偏移距离。根据上述对坐标轴的设定,可以采用设定的单位时间内,物体在X轴和Y轴的偏移距离,作为速度特征。在自动驾驶场景下,物体一般很少在高度方向上有移动,所以可不提取Z轴的偏移距离。在其他的应用场景下,也可以根据需要设置表征速度的具体特征内容。外观特征是能够表征物体外观的特征,一般可以为高维特征,例如128个通道维度的特征来表征物体外观。
本实施例中,跟踪属性输出头可以包括两个多层感知机,分别用于识别外观特征和速度特征。
根据所述物体的外观特征和速度特征,进行物体识别,作为物体识别结果。
通过外观特征和速度特征,可以识别当前视频帧中的候选物体,与已识别物体之间的相似度,从而建立关联。也可以为候选物体新创建物体,分配物体标识。关联的物体和新建的物体,以及物体的物体特征,可作为物体识别结果。
在上述操作中,可通过三维属性输出头识别物体类别和三维包围框数据来识别物体相似度,或者,也可以通过跟踪属性输出头识别物体外观特征和速度特征来识别物体相似度,再或者,也可以结合采用两个属性输出头,获得多种特征,一并识别物体相似度。
可选的是,根据所述解码模块的输出数据识别所述当前视频帧中的物体,作为物体识别结果包括:
步骤551、将所述解码模块的输出数据,输入跟踪属性输出头,以识别物体的外观特征和速度特征;
步骤552、将所述解码模块的输出数据,输入三维属性输出头,以识别所述当前视频帧中物体的物体类别和三维包围框数据;
步骤553、根据所述物体的物体类别、三维包围框数据、外观特征和速度特征,进行物体识别,作为物体识别结果。
跟踪属性输出头和三维属性输出头可以并行执行,分别输出对应的结果。
步骤560、根据所述物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新。
当获取到物体识别结果后,需要根据样本视频中已标注的物体以及物体特征,基于预设损失函数来计算损失值,并根据损失值对所述物体跟踪模型的参数进行更新。物体跟踪模型的参数包括模型中所有可调整的参数,例如骨干网络中的权重值,编码模块和解码模块中的矩阵权重值,输入解码模块的物体特征向量的向量值,属性输出头的参数值等。具体的参数调整方式本公开实施例不限。
整个模型的预设损失函数主要包含三维检测损失和跟踪损失两部分。
对于物体的三维包围框数据,采用的预设损失函数可以包括三维检测损失函数;所述三维检测损失函数包括中心点回归损失、长宽高回归损失和朝向角回归损失之和;其中,所述中心点回归损失、长宽高回归损失和朝向角回归损失可以均采用L1损失。 L1损失函数又称为MAE(mean abs error),即平均绝对误差,也就是预测值和真实值之间差值的绝对值。
具体的,三维检测损失L3d包括中心点回归损失Lloc,长宽高回归损失Lhwl和朝向角回归损失Lry,所有回归损失均采用L1损失函数,能够更好的收敛。三维检测损失L3d计算方式如下:
对于跟踪属性,所采用的预设损失函数包括跟踪损失函数,所述跟踪损失函数包括外观特征损失和速度回归损失之和;其中,所述外观特征损失采用交叉熵分类损失,所述速度回归损失采用L1损失。
具体的,跟踪损失Ltrack包括外观特征损失Lreid和速度回归损失Lvel,外观特征损失采用交叉熵分类损失,整个样本视频集中不同物体标识的物体分作不同的对象,速度回归损失采用L1损失,跟踪损失Ltrack计算方式如下:
Ltrack = Lreid + Lvel
本实施例的技术方案,可以通过物体的类别、三维包围框数据、外观特征和速度特征相结合,全方位考虑物体的特征,进行物体之间相似度的识别。通过采用该技术手段,能够解决当物体被偶尔遮挡或在侧面等外观特征不明确的情况下,也能有效识别物体之间的相似度,建立关联。
图6为本公开实施例提供的一种物体跟踪模型的训练方法的流程图,在上述实施例的基础上,本实施例进一步提供多线索多层次的数据关联跟踪方法。具体是,对“根据所述物体的物体类别、三维包围框数据、外观特征和速度特征,进行物体识别,作为物体识别结果”的操作提供可选方案。
步骤610、获取用于训练物体跟踪模型的多个样本视频,每个所述样本视频包括至少两个视频帧;
步骤620、在任一视频帧作为当前视频帧,对所述物体跟踪模型进行训练的过程中,将所述当前视频帧通过所述骨干网络提取的图像特征,输入编码模块中,以输出当前视频帧中图像对应的图像隐层向量;
步骤630、根据至少一个历史视频帧中已识别物体的物体特征向量,确定初始化的物体特征向量;
其中,所述历史视频帧为所述样本视频中位于所述当前视频帧前序的视频帧。
步骤640、将所述当前视频帧的图像隐层向量和所述初始化的物体特征向量,输入所述解码模块;
步骤651、将所述解码模块的输出数据,输入跟踪属性输出头,以识别物体的外观特征和速度特征;
步骤652、将所述解码模块的输出数据,输入三维属性输出头,以识别所述当前视频帧中物体的物体类别和三维包围框数据;
步骤6531、将所述当前视频帧中识别到的每个物体作为当前帧物体,将每个已识别物体作为历史帧物体;
后续需要计算两两物体之间的相似度,例如,当前帧物体有三个,历史帧物体有五个,则需要将每个当前帧物体,分别与五个历史帧物体进行相似度计算。具体计算过程如下:
步骤6532、根据所述当前帧物体的速度特征和三维包围框数据,以及所述历史帧物体的位置和三维包围框数据,确定所述当前帧物体与历史帧物体之间的运动相似度;
步骤6533、根据所述当前帧物体的物体类别和外观特征,以及所述历史帧物体的物体类别和外观特征,确定所述当前帧物体与历史帧物体之间的外观相似度;
步骤6534、根据所述运动相似度和所述外观相似度确定所述当前帧物体与历史帧物体之间的总相似度;
步骤6535、根据所述当前帧物体与历史帧物体之间的总相似度,将所述当前帧物体与历史帧物体进行关联,作为所述物体识别结果。
根据当前帧物体与历史帧物体之间的总相似度,可以采用设定门限值或排序等策略,来确定哪两个物体之间可能是同一物体,从而建立关联。
步骤660、根据所述物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新。
本实施例的技术方案,根据前述获取到的三维包围框数据、外观特征和速度特征实现物体跟踪,得到物体的标识,主要分为多线索相似度计算和多层次数据关联环节。
在多线索相似度计算环节,如前述步骤6531- 步骤6534的操作,计算相似度。相似度计算主要使用运动线索、外观线索和位置线索共同计算。
其中运动线索,即运动相似度的确定方式是基于速度特征和三维包围框数据确定的。确定的具体算法有多种,可选的,根据所述当前帧物体的速度特征和三维包围框数据,以及所述历史帧物体的位置和三维包围框数据,确定所述当前帧物体与历史帧物体之间的运动相似度包括:
根据所述当前帧物体的速度特征,预测所述历史帧物体在当前视频帧中的预测位置;
根据所述历史帧物体的三维包围框数据,计算在预测位置的三维包围框数据,并将计算的三维包围框数据与所述当前帧物体的三维包围框进行交并比的计算;
根据计算得到的交并比,确定所述当前帧物体与历史帧物体之间的运动相似度。
上述操作中针对要计算相似度的当前帧物体和历史帧物体,首先基于当前帧物体的速度特征,来预测历史帧物体在当前视频帧中的可能位置。优选是,根据所述当前帧物体的速度特征,预测所述历史帧物体在当前视频帧中的预测位置之前,还包括:采用卡尔曼滤波,根据历史帧物体的速度特征对所述当前帧物体的速度特征进行平滑处理。从而能够提高预测位置的准确性。当历史帧物体的三维包围框数据转移到预测位置后,计算与当前帧物体的三维包围框数据之间的交并比(Intersection over Union)。而后基于交并比可确定运动相似度Sm,可以直接用交并比确定运动相似度,也可以根据交并比,再结合两个物体之间的位置差距,共同确定运动相似度。
外观线索,即外观相似度,其确定方式是基于外观特征和物体类别定。确定的具体算法有多种,可选的,根据所述当前帧物体的物体类别和外观特征,以及所述历史帧物体的物体类别和外观特征,确定所述当前帧物体与历史帧物体之间的外观相似度包括:
根据所述当前帧物体的物体类别和外观特征,计算所述当前帧物体的外观特征与所述历史帧物体的外观特征之间的余弦相似度,作为所述外观相似度。
上述操作中,物体类别也可以采用外观相似度计算,首先判断物体类别,如果物体类别不相同,则可以确定外观相似度为0。如果物体类别相同,则进一步根据外观特征计算余弦相似度。
外观线索主要表现为计算跟踪轨迹(即历史帧物体)和当前帧实际检测到的物体之间的外观特征余弦相似度Sa。当采用多个摄像头同时采集的样本视频时,物体的外观特征融合了多个视角下的物体外观信息,相较单目摄像头方法可以获得对视角变化更鲁棒的外观特征。
上述方案的基础上,根据所述运动相似度和所述外观相似度确定所述当前帧物体与历史帧物体之间的总相似度可以包括:
按照如下公式计算所述当前帧物体与历史帧物体之间的总相似度:
其中,S为总相似度,Sm为运动相似度,Sa为外观相似度,为相似度权重参数。当 物体消失时间长时,的值变小,运动相似度变得不是那么可靠,则可提高外观相似度的 权重。
可选的是,将所述当前帧物体与历史帧物体进行关联之后,还包括:
基于如下公式,根据关联的历史帧物体的速度特征,对所述当前帧物体的速度特征进行平滑处理,并记录为当前帧物体的速度特征:
其中,为平滑处理后的速度特征,为历史帧物体的速度特征,为当前帧 物体的速度特征,为速度平滑权重参数。
每帧都会用当前帧的外观特征对跟踪轨迹的特征做滑动平均,设某当前帧物体的 外观特征为,历史帧物体的外观特征为,则平滑后的外观特征如上公式所示。为平滑参数,一般用0.9,可按实际情况设定。
在多层次数据关联环节,具体是基于相似度进行数据关联时,可采用多个层次进行关联。具体是,根据所述当前帧物体与历史帧物体之间的总相似度,将所述当前帧物体与历史帧物体进行关联,作为所述物体识别结果可以包括:
将所述当前帧物体与历史帧物体之间的总相似度达到设定总高分值的当前帧物体与历史帧物体,关联为同一物体,作为所述物体识别结果;
采用多目标跟踪算法,处理剩余未进行关联的当前帧物体和历史帧物体之间的运动相似度,将运动相似度达到设定运动高分值的当前帧物体与历史帧物体,关联为同一物体,作为所述物体识别结果;
基于运动相似度关联后,将剩余的当前帧物体创建为新的已识别物体,作为所述物体识别结果;
如果剩余的未关联当前帧物体的历史帧物体的保留时间达到设定帧数,则进行删除。
上述多层次的关联操作中,数据关联主要分为两个阶段,第一阶段将历史跟踪轨迹和高分检测框做关联,第二阶段将第一阶段中没有关联上检测结果的历史跟踪轨迹和低分检测框做关联。其中在第一阶段中相似度使用融合的总相似度S,第二阶段中相似度使用运动相似度Sm。因为低分检测结果中外观相似度往往不太可靠,优选是采用运动相似度进行关联。根据相似度使用匈牙利算法(多目标跟踪算法,用于解决多目标跟踪中的数据关联问题)得到物体标识。
上述操作中,区分高分和低分两个层次来进行物体关联,主要解决由于遮挡、模糊带来的目标相似度得分降低的情况。对于第一阶段中没有关联上历史跟踪轨迹的检测结果,新建跟踪轨迹,对于第二阶段中没有关联上检测结果的历史跟踪轨迹保留一定帧数(例如为30帧),如果超过这个帧数,则表明物体可以已经不存在于视频中,无需再保留,则删除该历史跟踪轨迹。最终得到所有物体的物体标识,完成物体跟踪。
图7为本公开实施例提供的一种物体跟踪方法的流程图。该物体跟踪方法采用物体跟踪模型对输入视频中的物体进行识别和跟踪,例如对于自动驾驶场景下,由车辆自身周边设置的摄像头采集周围环境的视频,从中识别物体并进行跟踪,以便为自动驾驶控制提供决策依据。
如图7所示,该方法包括:
步骤710、获取通过至少一个摄像头采集到的输入视频;其中,每个摄像头采集至少两个视频帧;
步骤720、将所述输入视频,输入物体跟踪模型,以输出从所述输入视频中识别到的物体跟踪结果。
其中,物体跟踪模型是采用本公开任意实施例所提供的物体跟踪模型的训练方法所训练得到的。
本实施例的技术方案中,优选的是,摄像头的数量为多个,分别为安装在车身周围的环视摄像头。
采用本实施例的技术方案,在物体跟踪模型中,融合了图像的空间特征,以及多个视频帧的时序特征,还输入了经过训练获得的物体特征向量,直接反应物体的特征变化规律,从而能够使得物体的识别跟踪准确性更好。物体跟踪模型训练完成时,物体特征向量能够反映设定数量历史视频帧中的物体特征,由此能够泛化的反映各种物体的特征变化规律。以自动驾驶场景为例,物体类别是有限的,在足够数量多的历史视频帧中,大概率可以反映各种物体类别的特征变化规律,可直接作为物体跟踪模型的一部分,在实际识别物体时使用。在实际使用物体跟踪模型进行物体识别跟踪时,就不再需要输入历史视频帧的物体特征,而直接采用训练完成的物体特征向量,输入解码模块。
本公开实施例可利用环视摄像头对驾驶场景中行人、车辆等感兴趣物体进行3D检测和跟踪,获取物体的类别、大小、3D位置、身份信息(物体标识跟踪)等属性。在自动驾驶场景中,物体的3D检测和跟踪为后续的预测和控制提供了重要基础,该方法可以广泛应用在自动驾驶感知中。
本公开实施例的技术方案,优选通过多个摄像头采集连续视频帧的RGB图像;可使用卷积神经网络提取带有时序信息的多视角图像视觉特征,再通过Transformer模型融合视觉特征和基于摄像头参数的场景3D坐标特征;然后通过不同的属性输出头预测物体的类别、在空间中的位置(3D包围框)、物体的外观特征、物体的速度特征等;最后利用外观特征、速度特征计算当前帧物体和历史帧物体的相似度,进行数据关联,得到物体的标识。由此实现自动驾驶中障碍物的3D检测和跟踪。
图8为本公开实施例提供的一种物体跟踪模型的训练装置的结构示意图,该装置:样本视频获取模块810、物体识别模块820和模型更新模块830。
其中,样本视频获取模块810,用于获取用于训练物体跟踪模型的多个样本视频,每个所述样本视频包括至少两个视频帧;物体识别模块820,用于在任一视频帧作为当前视频帧,对所述物体跟踪模型进行训练的过程中,将所述当前视频帧的图像数据和初始化的物体特征向量,输入所述物体跟踪模型,以输出识别到的物体,作为物体识别结果;其中,所述当前视频帧的初始化的物体特征向量,为基于至少一个历史视频帧中已识别物体的物体特征向量确定的;模型更新模块830,用于根据所述物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新。
本公开实施例的技术方案,在模型训练完成后,该物体特征向量反映了多个历史帧中各个物体的特征连续变化规律,也为后续训练好的物体跟踪模型进行物体识别跟踪时,提供了有力依据。因此,本公开实施例的技术方案通过引入物体特征向量参与训练,能够使得模型训练过程反映物体级别的变化规律,也使得训练完成的物体跟踪模型,能够更加准确的识别和跟踪物体。
可选的是,所述物体特征向量中的每个向量值,用于表征每个物体的物体特征,所述当前视频帧的初始化的物体特征基于所述物体在至少一个视频帧中的物体特征,采用设定融合方法而确定。
可选的是,所述设定融合方法为自注意力交互方法。
可选的是,该装置还包括物体特征向量初始化模块,用于确定所述当前视频帧的初始化的物体特征向量,所述物体特征向量初始化模块包括:
历史物体特征获取单元,用于获取所述物体跟踪模型针对所述历史视频帧训练后输出的已识别物体的物体特征;
待识别物体特征获取单元,用于将所述当前视频帧在样本视频中已标注的物体,作为所述当前视频帧中待识别物体,并对所述待识别物体的物体特征进行初始化;
物体合并单元,用于将所述已识别物体和待识别物体中的相同物体合并为目标物体;
特征确定单元,用于根据所述目标物体在至少一帧中的物体特征,确定所述目标物体的物体特征;
向量初始化单元,用于根据至少一个所述目标物体的物体特征,确定所述当前视频帧的初始化的物体特征向量。
可选的是,所述模型更新模块具体用于:
根据所述当前视频帧的物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新,至达到收敛条件时,获取所述当前视频帧的更新后的物体特征向量;
从所述当前视频帧的更新后的物体特征向量中获取物体特征,记录在物体特征记忆池中。
可选的是,所述物体跟踪模型包括骨干网络、编码模块、物体特征向量和解码模块;所述物体识别模块包括:
编码处理单元,用于将所述当前视频帧通过所述骨干网络提取的图像特征,输入编码模块中,以输出当前视频帧中图像对应的图像隐层向量;
初始向量确定单元,用于根据至少一个历史视频帧中已识别物体的物体特征向量,确定所述初始化的物体特征向量;其中,所述历史视频帧为所述样本视频中位于所述当前视频帧前序的视频帧;
解码处理单元,用于将所述当前视频帧的图像隐层向量和所述初始化的物体特征向量,输入所述解码模块;
物体识别单元,用于根据所述解码模块的输出数据识别所述当前视频帧中的物体,作为物体识别结果。
可选的是,所述物体跟踪模型为Transformer模型,所述物体特征向量作为输入所述解码模块的搜索向量,所述图像隐层向量分别作为输入所述解码模块的键向量和值向量。
可选的是,该装置还包括:
空间特征获取模块,用于将所述当前视频帧通过所述骨干网络提取的图像特征,输入编码模块中之前,获取所述当前视频帧中图像的三维空间特征;
空间图像融合模块,用于将所述当前视频帧的三维空间特征和图像特征进行融合,以形成空间图像特征,作为输入所述编码模块的图像特征。
可选的是,空间图像融合模块具体用于:
将所述当前视频帧的图像特征,和所述当前视频帧中图像的三维空间特征,分别进行维度调整,以调整至相同维度;
将调整维度后的图像特征和三维空间特征进行拼接,以形成空间图像特征。
可选的是,该装置还包括:
空间特征拼接模块,用于将所述当前视频帧通过所述骨干网络提取的图像特征,输入编码模块中之前,获取至少一个历史视频帧中图像的三维空间特征,与所述当前视频帧中图像的三维空间特征进行拼接,以形成时序三维空间特征;
图像特征拼接模块,用于获取至少一个历史视频帧的图像特征,与所述当前视频帧的图像特征进行拼接,以形成时序图像特征;
时序空间图像融合模块,用于将所述当前视频帧的时序三维空间特征和时序图像特征进行融合,以形成时序空间图像特征,作为输入所述编码模块的图像特征。
可选的是,所述物体特征向量中的物体特征为物体在三维空间坐标系下的位置特征。
可选的是,该装置还包括:
空间特征记录模块,用于根据拍摄各所述视频帧的摄像头的内参外参矩阵,确定所述视频帧中图像像素点所对应的三维空间特征,并记录至空间特征记忆池中。
可选的是,空间特征记录模块具体用于:
将所述当前视频帧中图像的像素点,转换至所述摄像头的视锥空间坐标系下;
根据所述内参外参矩阵,将图像的像素点在所述视锥空间坐标系下的坐标转换为三维空间坐标下的坐标,作为所述三维空间特征。
可选的是,该装置还包括:
图像特征记录模块,用于将各所述视频帧的图像特征,记录至图像特征记忆池中。
可选的是,所述物体识别单元具体用于:
将所述解码模块的输出数据,输入三维属性输出头,以识别所述当前视频帧中物体的物体类别和三维包围框数据;
根据所述物体的物体类别和三维包围框数据,进行物体识别,作为物体识别结果。
可选的是,所述三维包围框数据包括物体的长度、宽度、高度、中心点三维坐标和朝向角,所述朝向角为物体相对于标准坐标轴的夹角。
可选的是,所述预设损失函数包括三维检测损失函数;所述三维检测损失函数包括中心点回归损失、长宽高回归损失和朝向角回归损失之和;其中,所述中心点回归损失、长宽高回归损失和朝向角回归损失均采用L1损失。
可选的是,所述三维属性输出头包括两个多层感知机,分别用于识别物体类别和物体的三维包围框数据。
可选的是,所述物体识别单元具体用于:
将所述解码模块的输出数据,输入跟踪属性输出头,以识别物体的外观特征和速度特征;
根据所述物体的外观特征和速度特征,进行物体识别,作为物体识别结果。
可选的是,所述速度特征为所述物体在单位时间内,位于水平面内两个垂直轴向的偏移距离。
可选的是,所述预设损失函数包括跟踪损失函数,所述跟踪损失函数包括外观特征损失和速度回归损失之和;其中,所述外观特征损失采用交叉熵分类损失,所述速度回归损失采用L1损失。
可选的是,所述跟踪属性输出头包括两个多层感知机,分别用于识别外观特征和速度特征。
可选的是,所述物体识别单元包括:
跟踪输出子单元,用于将所述解码模块的输出数据,输入跟踪属性输出头,以识别物体的外观特征和速度特征;
三维输出子单元,用于将所述解码模块的输出数据,输入三维属性输出头,以识别所述当前视频帧中物体的物体类别和三维包围框数据;
物体识别子单元,用于根据所述物体的物体类别、三维包围框数据、外观特征和速度特征,进行物体识别,作为物体识别结果。
可选的是,所述物体识别子单元包括:
帧物体确定子单元,用于将所述当前视频帧中识别到的每个物体作为当前帧物体,将每个已识别物体作为历史帧物体;
运动相似度确定子单元,用于根据所述当前帧物体的速度特征和三维包围框数据,以及所述历史帧物体的位置和三维包围框数据,确定所述当前帧物体与历史帧物体之间的运动相似度;
外观相似度确定子单元,用于根据所述当前帧物体的物体类别和外观特征,以及所述历史帧物体的物体类别和外观特征,确定所述当前帧物体与历史帧物体之间的外观相似度;
总相似度确定子单元,用于根据所述运动相似度和所述外观相似度确定所述当前帧物体与历史帧物体之间的总相似度;
物体关联子单元,用于根据所述当前帧物体与历史帧物体之间的总相似度,将所述当前帧物体与历史帧物体进行关联,作为所述物体识别结果。
可选的是,运动相似度确定子单元具体用于:
根据所述当前帧物体的速度特征,预测所述历史帧物体在当前视频帧中的预测位置;
根据所述历史帧物体的三维包围框数据,计算在预测位置的三维包围框数据,并将计算的三维包围框数据与所述当前帧物体的三维包围框进行交并比的计算;
根据计算得到的交并比,确定所述当前帧物体与历史帧物体之间的运动相似度。
可选的是,该装置还包括:
速度特征平滑子单元,用于根据所述当前帧物体的速度特征,预测所述历史帧物体在当前视频帧中的预测位置之前,采用卡尔曼滤波,根据历史帧物体的速度特征对所述当前帧物体的速度特征进行平滑处理。
可选的是,外观相似度确定子单元具体用于:
根据所述当前帧物体的物体类别和外观特征,计算所述当前帧物体的外观特征与所述历史帧物体的外观特征之间的余弦相似度,作为所述外观相似度。
可选的是,总相似度确定子单元具体用于:
按照如下公式计算所述当前帧物体与历史帧物体之间的总相似度:
其中,S为总相似度,Sm为运动相似度,Sa为外观相似度,为相似度权重参数。
可选的是,还包括:
物体速度平滑模块,用于将所述当前帧物体与历史帧物体进行关联之后,基于如下公式,根据关联的历史帧物体的速度特征,对所述当前帧物体的速度特征进行平滑处理,并记录为当前帧物体的速度特征:
其中,为平滑处理后的速度特征,为历史帧物体的速度特征,为当前帧 物体的速度特征,为速度平滑权重参数。
可选的是,物体关联子单元具体用于:
将所述当前帧物体与历史帧物体之间的总相似度达到设定总高分值的当前帧物体与历史帧物体,关联为同一物体,作为所述物体识别结果;
采用多目标跟踪算法,处理剩余未进行关联的当前帧物体和历史帧物体之间的运动相似度,将运动相似度达到设定运动高分值的当前帧物体与历史帧物体,关联为同一物体,作为所述物体识别结果;
基于运动相似度关联后,将剩余的当前帧物体创建为新的已识别物体,作为所述物体识别结果;
如果剩余的未关联当前帧物体的历史帧物体的保留时间达到设定帧数,则进行删除。
可选的是,所述样本视频采用安装在车身周围的多个环视摄像头进行采集,所述视频帧为RGB图像。
本公开实施例所提供的物体跟踪模型的训练装置,可以执行本公开任意实施例所提供的物体跟踪模型的训练方法,具备相应的功能和有益效果。
图9为本公开实施例提供的一种物体跟踪装置的结构示意图,该装置包括:输入视频获取模块910和物体跟踪模块920。
其中,输入视频获取模块910,用于获取通过至少一个摄像头采集到的输入视频;其中,每个摄像头采集至少两个视频帧;物体跟踪模块920,用于将所述输入视频,输入本公开任一实施例所提供物体跟踪模型的训练方法所训练得到的物体跟踪模型,以输出从所述输入视频中识别到的物体跟踪结果。
可选的是,所述摄像头的数量为多个,分别为安装在车身周围的环视摄像头。
采用本实施例的技术方案,在物体跟踪模型中,融合了图像的空间特征,以及多个视频帧的时序特征,还输入了经过训练获得的物体特征向量,直接反应物体的特征变化规律,从而能够使得物体的识别跟踪准确性更好。物体跟踪模型训练完成时,物体特征向量能够反映设定数量历史视频帧中的物体特征,由此能够泛化的反映各种物体的特征变化规律。以自动驾驶场景为例,物体类别是有限的,在足够数量多的历史视频帧中,大概率可以反映各种物体类别的特征变化规律,可直接作为物体跟踪模型的一部分,在实际识别物体时使用。在实际使用物体跟踪模型进行物体识别跟踪时,就不再需要输入历史视频帧的物体特征,而直接采用训练完成的物体特征向量,输入解码模块。
本公开实施例所提供的物体跟踪装置,可以执行本公开任意实施例所提供的物体跟踪方法,具备相应的功能和有益效果。
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图10示出了可以用来实施本公开的实施例的示例电子设备的示意性框图。电子设备1000旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图10所示,设备1000包括计算单元1001,其可以根据存储在只读存储器(ROM)1002中的计算机程序或者从存储单元1008加载到随机访问存储器(RAM)1003中的计算机程序,来执行各种适当的动作和处理。在RAM 1003中,还可存储设备1000操作所需的各种程序和数据。计算单元1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
设备1000中的多个部件连接至I/O接口1005,包括:输入单元1006,例如键盘、鼠标等;输出单元1007,例如各种类型的显示器、扬声器等;存储单元1008,例如磁盘、光盘等;以及通信单元1009,例如网卡、调制解调器、无线通信收发机等。通信单元1009允许电子设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1001可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1001的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1001执行上文所描述的各个方法和处理,例如物体跟踪模型的训练方法或物体跟踪方法。例如,在一些实施例中,物体跟踪模型的训练方法或物体跟踪方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1008。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1002和/或通信单元1009而被载入和/或安装到设备1000上。当计算机程序加载到RAM 1003并由计算单元1001执行时,可以执行上文描述的物体跟踪模型的训练方法或物体跟踪方法的一个或多个步骤。备选地,在其他实施例中,计算单元1001可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行物体跟踪模型的训练方法或物体跟踪方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)区块链网络和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术及机器学习/深度学习技术、大数据处理技术、知识图谱技术等几大方向。
云计算(cloud computing),指的是通过网络接入弹性可扩展的共享物理或虚拟资源池,资源可以包括服务器、操作系统、网络、软件、应用和存储设备等,并可以按需、自服务的方式对资源进行部署和管理的技术体系。通过云计算技术,可以为人工智能、区块链等技术应用、模型训练提供高效强大的数据处理能力。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开提供的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (64)

1.一种物体跟踪模型的训练方法,包括:
获取用于训练物体跟踪模型的多个样本视频,每个所述样本视频包括至少两个视频帧;
在任一视频帧作为当前视频帧,对所述物体跟踪模型进行训练的过程中,将所述当前视频帧的图像数据和初始化的物体特征向量,输入所述物体跟踪模型,以输出识别到的物体,作为物体识别结果;其中,所述当前视频帧的初始化的物体特征向量,为基于至少一个历史视频帧中已识别物体的物体特征向量确定的;所述物体特征向量中的每个向量值,用于表征每个物体的物体特征,所述当前视频帧的初始化的物体特征基于所述物体在至少一个视频帧中的物体特征,采用设定融合方法而确定;每个初始化的物体特征向量中,均反映了物体级别的物体特征,并且为历史视频帧中的已识别物体;所述物体跟踪模型包括骨干网络、编码模块、物体特征向量和解码模块;训练完成的物体特征向量用于在物体跟踪模型进行物体识别跟踪时使用,输入解码模块;
根据所述物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新;
其中,将所述当前视频帧的图像数据和初始化物体特征向量,输入所述物体跟踪模型,以输出识别到的物体,作为物体识别结果包括:
将所述当前视频帧通过所述骨干网络提取的图像特征,输入编码模块中,以输出当前视频帧中图像对应的图像隐层向量;
根据至少一个历史视频帧中已识别物体的物体特征向量,确定所述初始化的物体特征向量;其中,所述历史视频帧为所述样本视频中位于所述当前视频帧前序的视频帧;
将所述当前视频帧的图像隐层向量和所述初始化的物体特征向量,输入所述解码模块;
根据所述解码模块的输出数据识别所述当前视频帧中的物体,作为物体识别结果。
2.根据权利要求1所述的方法,其中,所述设定融合方法为自注意力交互方法。
3.根据权利要求1所述的方法,其中,所述当前视频帧的初始化的物体特征向量的确定过程包括:
获取所述物体跟踪模型针对所述历史视频帧训练后输出的已识别物体的物体特征;
将所述当前视频帧在样本视频中已标注的物体,作为所述当前视频帧中待识别物体,并对所述待识别物体的物体特征进行初始化;
将所述已识别物体和待识别物体中的相同物体合并为目标物体;
根据所述目标物体在至少一帧中的物体特征,确定所述目标物体的物体特征;
根据至少一个所述目标物体的物体特征,确定所述当前视频帧的初始化的物体特征向量。
4.根据权利要求3所述的方法,其中,根据所述物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新包括:
根据所述当前视频帧的物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新,至达到收敛条件时,获取所述当前视频帧的更新后的物体特征向量;
从所述当前视频帧的更新后的物体特征向量中获取物体特征,记录在物体特征记忆池中。
5.根据权利要求1所述的方法,其中,所述物体跟踪模型为Transformer模型,所述物体特征向量作为输入所述解码模块的搜索向量,所述图像隐层向量分别作为输入所述解码模块的键向量和值向量。
6.根据权利要求1所述的方法,将所述当前视频帧通过所述骨干网络提取的图像特征,输入编码模块中之前,还包括:
获取所述当前视频帧中图像的三维空间特征;
将所述当前视频帧的三维空间特征和图像特征进行融合,以形成空间图像特征,作为输入所述编码模块的图像特征。
7.根据权利要求6所述的方法,其中,将所述当前视频帧的三维空间特征和图像特征进行融合,以形成空间图像特征包括:
将所述当前视频帧的图像特征,和所述当前视频帧中图像的三维空间特征,分别进行维度调整,以调整至相同维度;
将调整维度后的图像特征和三维空间特征进行拼接,以形成空间图像特征。
8.根据权利要求1所述的方法,将所述当前视频帧通过所述骨干网络提取的图像特征,输入编码模块中之前,还包括:
获取至少一个历史视频帧中图像的三维空间特征,与所述当前视频帧中图像的三维空间特征进行拼接,以形成时序三维空间特征;
获取至少一个历史视频帧的图像特征,与所述当前视频帧的图像特征进行拼接,以形成时序图像特征;
将所述当前视频帧的时序三维空间特征和时序图像特征进行融合,以形成时序空间图像特征,作为输入所述编码模块的图像特征。
9.根据权利要求6或8所述的方法,其中,所述物体特征向量中的物体特征为物体在三维空间坐标系下的位置特征。
10.根据权利要求6或8所述的方法,还包括:
根据拍摄各所述视频帧的摄像头的内参外参矩阵,确定所述视频帧中图像像素点所对应的三维空间特征,并记录至空间特征记忆池中。
11.根据权利要求10所述的方法,其中,根据拍摄所述当前视频帧的摄像头的内参外参矩阵,确定所述当前视频帧中图像像素点所对应的三维空间特征包括:
将所述当前视频帧中图像的像素点,转换至所述摄像头的视锥空间坐标系下;
根据所述内参外参矩阵,将图像的像素点在所述视锥空间坐标系下的坐标转换为三维空间坐标下的坐标,作为所述三维空间特征。
12.根据权利要求8所述的方法,还包括:
将各所述视频帧的图像特征,记录至图像特征记忆池中。
13.根据权利要求1所述的方法,其中,根据所述解码模块的输出数据识别所述当前视频帧中的物体,作为物体识别结果包括:
将所述解码模块的输出数据,输入三维属性输出头,以识别所述当前视频帧中物体的物体类别和三维包围框数据;
根据所述物体的物体类别和三维包围框数据,进行物体识别,作为物体识别结果。
14.根据权利要求13所述的方法,其中,所述三维包围框数据包括物体的长度、宽度、高度、中心点三维坐标和朝向角,所述朝向角为物体相对于标准坐标轴的夹角。
15.根据权利要求13所述的方法,其中,所述预设损失函数包括三维检测损失函数;所述三维检测损失函数包括中心点回归损失、长宽高回归损失和朝向角回归损失之和;其中,所述中心点回归损失、长宽高回归损失和朝向角回归损失均采用L1损失。
16.根据权利要求13所述的方法,其中,所述三维属性输出头包括两个多层感知机,分别用于识别物体类别和物体的三维包围框数据。
17.根据权利要求1所述的方法,其中,根据所述解码模块的输出数据识别所述当前视频帧中的物体,作为物体识别结果包括:
将所述解码模块的输出数据,输入跟踪属性输出头,以识别物体的外观特征和速度特征;
根据所述物体的外观特征和速度特征,进行物体识别,作为物体识别结果。
18.根据权利要求17所述的方法,其中,所述速度特征为所述物体在单位时间内,位于水平面内两个垂直轴向的偏移距离。
19.根据权利要求17所述的方法,其中,所述预设损失函数包括跟踪损失函数,所述跟踪损失函数包括外观特征损失和速度回归损失之和;其中,所述外观特征损失采用交叉熵分类损失,所述速度回归损失采用L1损失。
20.根据权利要求17所述的方法,其中,所述跟踪属性输出头包括两个多层感知机,分别用于识别外观特征和速度特征。
21.根据权利要求1所述的方法,其中,根据所述解码模块的输出数据识别所述当前视频帧中的物体,作为物体识别结果包括:
将所述解码模块的输出数据,输入跟踪属性输出头,以识别物体的外观特征和速度特征;
将所述解码模块的输出数据,输入三维属性输出头,以识别所述当前视频帧中物体的物体类别和三维包围框数据;
根据所述物体的物体类别、三维包围框数据、外观特征和速度特征,进行物体识别,作为物体识别结果。
22.根据权利要求21所述的方法,其中,根据所述物体的物体类别、三维包围框数据、外观特征和速度特征,进行物体识别,作为物体识别结果包括:
将所述当前视频帧中识别到的每个物体作为当前帧物体,将每个已识别物体作为历史帧物体;
根据所述当前帧物体的速度特征和三维包围框数据,以及所述历史帧物体的位置和三维包围框数据,确定所述当前帧物体与历史帧物体之间的运动相似度;
根据所述当前帧物体的物体类别和外观特征,以及所述历史帧物体的物体类别和外观特征,确定所述当前帧物体与历史帧物体之间的外观相似度;
根据所述运动相似度和所述外观相似度确定所述当前帧物体与历史帧物体之间的总相似度;
根据所述当前帧物体与历史帧物体之间的总相似度,将所述当前帧物体与历史帧物体进行关联,作为所述物体识别结果。
23.根据权利要求22所述的方法,其中,根据所述当前帧物体的速度特征和三维包围框数据,以及所述历史帧物体的位置和三维包围框数据,确定所述当前帧物体与历史帧物体之间的运动相似度包括:
根据所述当前帧物体的速度特征,预测所述历史帧物体在当前视频帧中的预测位置;
根据所述历史帧物体的三维包围框数据,计算在预测位置的三维包围框数据,并将计算的三维包围框数据与所述当前帧物体的三维包围框进行交并比的计算;
根据计算得到的交并比,确定所述当前帧物体与历史帧物体之间的运动相似度。
24.根据权利要求23所述的方法,根据所述当前帧物体的速度特征,预测所述历史帧物体在当前视频帧中的预测位置之前,还包括:
采用卡尔曼滤波,根据历史帧物体的速度特征对所述当前帧物体的速度特征进行平滑处理。
25.根据权利要求22所述的方法,其中,根据所述当前帧物体的物体类别和外观特征,以及所述历史帧物体的物体类别和外观特征,确定所述当前帧物体与历史帧物体之间的外观相似度包括:
根据所述当前帧物体的物体类别和外观特征,计算所述当前帧物体的外观特征与所述历史帧物体的外观特征之间的余弦相似度,作为所述外观相似度。
26.根据权利要求22所述的方法,其中,根据所述运动相似度和所述外观相似度确定所述当前帧物体与历史帧物体之间的总相似度包括:
按照如下公式计算所述当前帧物体与历史帧物体之间的总相似度:
其中,S为总相似度,Sm为运动相似度,Sa为外观相似度,为相似度权重参数。
27.根据权利要求22所述的方法,将所述当前帧物体与历史帧物体进行关联之后,还包括:
基于如下公式,根据关联的历史帧物体的速度特征,对所述当前帧物体的速度特征进行平滑处理,并记录为当前帧物体的速度特征:
其中,为平滑处理后的速度特征,/>为历史帧物体的速度特征,/>为当前帧物体的速度特征,/>为速度平滑权重参数。
28.根据权利要求22所述的方法,其中,根据所述当前帧物体与历史帧物体之间的总相似度,将所述当前帧物体与历史帧物体进行关联,作为所述物体识别结果包括:
将所述当前帧物体与历史帧物体之间的总相似度达到设定总高分值的当前帧物体与历史帧物体,关联为同一物体,作为所述物体识别结果;
采用多目标跟踪算法,处理剩余未进行关联的当前帧物体和历史帧物体之间的运动相似度,将运动相似度达到设定运动高分值的当前帧物体与历史帧物体,关联为同一物体,作为所述物体识别结果;
基于运动相似度关联后,将剩余的当前帧物体创建为新的已识别物体,作为所述物体识别结果;
如果剩余的未关联当前帧物体的历史帧物体的保留时间达到设定帧数,则进行删除。
29.根据权利要求1所述的方法,其中,所述样本视频采用安装在车身周围的多个环视摄像头进行采集,所述视频帧为RGB图像。
30.一种物体跟踪方法,包括:
获取通过至少一个摄像头采集到的输入视频;其中,每个摄像头采集至少两个视频帧;
将所述输入视频,输入权利要求1-29任一所述的物体跟踪模型的训练方法所训练得到的物体跟踪模型,以输出从所述输入视频中识别到的物体跟踪结果。
31.根据权利要求30所述的方法,其中,所述摄像头的数量为多个,分别为安装在车身周围的环视摄像头。
32.一种物体跟踪模型的训练装置,包括:
样本视频获取模块,用于获取用于训练物体跟踪模型的多个样本视频,每个所述样本视频包括至少两个视频帧;
物体识别模块,用于在任一视频帧作为当前视频帧,对所述物体跟踪模型进行训练的过程中,将所述当前视频帧的图像数据和初始化的物体特征向量,输入所述物体跟踪模型,以输出识别到的物体,作为物体识别结果;其中,所述当前视频帧的初始化的物体特征向量,为基于至少一个历史视频帧中已识别物体的物体特征向量确定的;所述物体特征向量中的每个向量值,用于表征每个物体的物体特征,所述当前视频帧的初始化的物体特征基于所述物体在至少一个视频帧中的物体特征,采用设定融合方法而确定;每个初始化的物体特征向量中,均反映了物体级别的物体特征,并且为历史视频帧中的已识别物体;所述物体跟踪模型包括骨干网络、编码模块、物体特征向量和解码模块;训练完成的物体特征向量用于在物体跟踪模型进行物体识别跟踪时使用,输入解码模块;
模型更新模块,用于根据所述物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新;
其中,所述物体识别模块包括:
编码处理单元,用于将所述当前视频帧通过所述骨干网络提取的图像特征,输入编码模块中,以输出当前视频帧中图像对应的图像隐层向量;
初始向量确定单元,用于根据至少一个历史视频帧中已识别物体的物体特征向量,确定所述初始化的物体特征向量;其中,所述历史视频帧为所述样本视频中位于所述当前视频帧前序的视频帧;
解码处理单元,用于将所述当前视频帧的图像隐层向量和所述初始化的物体特征向量,输入所述解码模块;
物体识别单元,用于根据所述解码模块的输出数据识别所述当前视频帧中的物体,作为物体识别结果。
33.根据权利要求32所述的装置,其中,所述设定融合方法为自注意力交互方法。
34.根据权利要求32所述的装置,还包括物体特征向量初始化模块,用于确定所述当前视频帧的初始化的物体特征向量,所述物体特征向量初始化模块包括:
历史物体特征获取单元,用于获取所述物体跟踪模型针对所述历史视频帧训练后输出的已识别物体的物体特征;
待识别物体特征获取单元,用于将所述当前视频帧在样本视频中已标注的物体,作为所述当前视频帧中待识别物体,并对所述待识别物体的物体特征进行初始化;
物体合并单元,用于将所述已识别物体和待识别物体中的相同物体合并为目标物体;
特征确定单元,用于根据所述目标物体在至少一帧中的物体特征,确定所述目标物体的物体特征;
向量初始化单元,用于根据至少一个所述目标物体的物体特征,确定所述当前视频帧的初始化的物体特征向量。
35.根据权利要求34所述的装置,其中,所述模型更新模块具体用于:
根据所述当前视频帧的物体识别结果,基于预设损失函数对所述物体跟踪模型进行更新,至达到收敛条件时,获取所述当前视频帧的更新后的物体特征向量;
从所述当前视频帧的更新后的物体特征向量中获取物体特征,记录在物体特征记忆池中。
36.根据权利要求32所述的装置,其中,所述物体跟踪模型为Transformer模型,所述物体特征向量作为输入所述解码模块的搜索向量,所述图像隐层向量分别作为输入所述解码模块的键向量和值向量。
37.根据权利要求32所述的装置,还包括:
空间特征获取模块,用于将所述当前视频帧通过所述骨干网络提取的图像特征,输入编码模块中之前,获取所述当前视频帧中图像的三维空间特征;
空间图像融合模块,用于将所述当前视频帧的三维空间特征和图像特征进行融合,以形成空间图像特征,作为输入所述编码模块的图像特征。
38.根据权利要求37所述的装置,其中,空间图像融合模块具体用于:
将所述当前视频帧的图像特征,和所述当前视频帧中图像的三维空间特征,分别进行维度调整,以调整至相同维度;
将调整维度后的图像特征和三维空间特征进行拼接,以形成空间图像特征。
39.根据权利要求32所述的装置,还包括:
空间特征拼接模块,用于将所述当前视频帧通过所述骨干网络提取的图像特征,输入编码模块中之前,获取至少一个历史视频帧中图像的三维空间特征,与所述当前视频帧中图像的三维空间特征进行拼接,以形成时序三维空间特征;
图像特征拼接模块,用于获取至少一个历史视频帧的图像特征,与所述当前视频帧的图像特征进行拼接,以形成时序图像特征;
时序空间图像融合模块,用于将所述当前视频帧的时序三维空间特征和时序图像特征进行融合,以形成时序空间图像特征,作为输入所述编码模块的图像特征。
40.根据权利要求37或39所述的装置,其中,所述物体特征向量中的物体特征为物体在三维空间坐标系下的位置特征。
41.根据权利要求37或39所述的装置,还包括:
空间特征记录模块,用于根据拍摄各所述视频帧的摄像头的内参外参矩阵,确定所述视频帧中图像像素点所对应的三维空间特征,并记录至空间特征记忆池中。
42.根据权利要求41所述的装置,其中,空间特征记录模块具体用于:
将所述当前视频帧中图像的像素点,转换至所述摄像头的视锥空间坐标系下;
根据所述内参外参矩阵,将图像的像素点在所述视锥空间坐标系下的坐标转换为三维空间坐标下的坐标,作为所述三维空间特征。
43.根据权利要求39所述的装置,还包括:
图像特征记录模块,用于将各所述视频帧的图像特征,记录至图像特征记忆池中。
44.根据权利要求32所述的装置,其中,所述物体识别单元具体用于:
将所述解码模块的输出数据,输入三维属性输出头,以识别所述当前视频帧中物体的物体类别和三维包围框数据;
根据所述物体的物体类别和三维包围框数据,进行物体识别,作为物体识别结果。
45.根据权利要求44所述的装置,其中,所述三维包围框数据包括物体的长度、宽度、高度、中心点三维坐标和朝向角,所述朝向角为物体相对于标准坐标轴的夹角。
46.根据权利要求44所述的装置,其中,所述预设损失函数包括三维检测损失函数;所述三维检测损失函数包括中心点回归损失、长宽高回归损失和朝向角回归损失之和;其中,所述中心点回归损失、长宽高回归损失和朝向角回归损失均采用L1损失。
47.根据权利要求44所述的装置,其中,所述三维属性输出头包括两个多层感知机,分别用于识别物体类别和物体的三维包围框数据。
48.根据权利要求32所述的装置,其中,所述物体识别单元具体用于:
将所述解码模块的输出数据,输入跟踪属性输出头,以识别物体的外观特征和速度特征;
根据所述物体的外观特征和速度特征,进行物体识别,作为物体识别结果。
49.根据权利要求48所述的装置,其中,所述速度特征为所述物体在单位时间内,位于水平面内两个垂直轴向的偏移距离。
50.根据权利要求48所述的装置,其中,所述预设损失函数包括跟踪损失函数,所述跟踪损失函数包括外观特征损失和速度回归损失之和;其中,所述外观特征损失采用交叉熵分类损失,所述速度回归损失采用L1损失。
51.根据权利要求48所述的装置,其中,所述跟踪属性输出头包括两个多层感知机,分别用于识别外观特征和速度特征。
52.根据权利要求32所述的装置,其中,所述物体识别单元包括:
跟踪输出子单元,用于将所述解码模块的输出数据,输入跟踪属性输出头,以识别物体的外观特征和速度特征;
三维输出子单元,用于将所述解码模块的输出数据,输入三维属性输出头,以识别所述当前视频帧中物体的物体类别和三维包围框数据;
物体识别子单元,用于根据所述物体的物体类别、三维包围框数据、外观特征和速度特征,进行物体识别,作为物体识别结果。
53.根据权利要求52所述的装置,其中,所述物体识别子单元包括:
帧物体确定子单元,用于将所述当前视频帧中识别到的每个物体作为当前帧物体,将每个已识别物体作为历史帧物体;
运动相似度确定子单元,用于根据所述当前帧物体的速度特征和三维包围框数据,以及所述历史帧物体的位置和三维包围框数据,确定所述当前帧物体与历史帧物体之间的运动相似度;
外观相似度确定子单元,用于根据所述当前帧物体的物体类别和外观特征,以及所述历史帧物体的物体类别和外观特征,确定所述当前帧物体与历史帧物体之间的外观相似度;
总相似度确定子单元,用于根据所述运动相似度和所述外观相似度确定所述当前帧物体与历史帧物体之间的总相似度;
物体关联子单元,用于根据所述当前帧物体与历史帧物体之间的总相似度,将所述当前帧物体与历史帧物体进行关联,作为所述物体识别结果。
54.根据权利要求53所述的装置,其中,运动相似度确定子单元具体用于:
根据所述当前帧物体的速度特征,预测所述历史帧物体在当前视频帧中的预测位置;
根据所述历史帧物体的三维包围框数据,计算在预测位置的三维包围框数据,并将计算的三维包围框数据与所述当前帧物体的三维包围框进行交并比的计算;
根据计算得到的交并比,确定所述当前帧物体与历史帧物体之间的运动相似度。
55.根据权利要求54所述的装置,还包括:
速度特征平滑子单元,用于根据所述当前帧物体的速度特征,预测所述历史帧物体在当前视频帧中的预测位置之前,采用卡尔曼滤波,根据历史帧物体的速度特征对所述当前帧物体的速度特征进行平滑处理。
56.根据权利要求53所述的装置,其中,外观相似度确定子单元具体用于:
根据所述当前帧物体的物体类别和外观特征,计算所述当前帧物体的外观特征与所述历史帧物体的外观特征之间的余弦相似度,作为所述外观相似度。
57.根据权利要求53所述的装置,其中,总相似度确定子单元具体用于:
按照如下公式计算所述当前帧物体与历史帧物体之间的总相似度:
其中,S为总相似度,Sm为运动相似度,Sa为外观相似度,为相似度权重参数。
58.根据权利要求53所述的装置,还包括:
物体速度平滑模块,用于将所述当前帧物体与历史帧物体进行关联之后,基于如下公式,根据关联的历史帧物体的速度特征,对所述当前帧物体的速度特征进行平滑处理,并记录为当前帧物体的速度特征:
其中,为平滑处理后的速度特征,/>为历史帧物体的速度特征,/>为当前帧物体的速度特征,/>为速度平滑权重参数。
59.根据权利要求53所述的装置,其中,物体关联子单元具体用于:
将所述当前帧物体与历史帧物体之间的总相似度达到设定总高分值的当前帧物体与历史帧物体,关联为同一物体,作为所述物体识别结果;
采用多目标跟踪算法,处理剩余未进行关联的当前帧物体和历史帧物体之间的运动相似度,将运动相似度达到设定运动高分值的当前帧物体与历史帧物体,关联为同一物体,作为所述物体识别结果;
基于运动相似度关联后,将剩余的当前帧物体创建为新的已识别物体,作为所述物体识别结果;
如果剩余的未关联当前帧物体的历史帧物体的保留时间达到设定帧数,则进行删除。
60.根据权利要求32所述的装置,其中,所述样本视频采用安装在车身周围的多个环视摄像头进行采集,所述视频帧为RGB图像。
61.一种物体跟踪装置,包括:
输入视频获取模块,用于获取通过至少一个摄像头采集到的输入视频;其中,每个摄像头采集至少两个视频帧;
物体跟踪模块,用于将所述输入视频,输入权利要求1-29任一所述的物体跟踪模型的训练方法所训练得到的物体跟踪模型,以输出从所述输入视频中识别到的物体跟踪结果。
62.根据权利要求61所述的装置,其中,所述摄像头的数量为多个,分别为安装在车身周围的环视摄像头。
63. 一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-29中任一项所述的物体跟踪模型的训练方法或权利要求30或31所述的物体跟踪方法。
64.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行根据权利要求1-29中任一项所述的物体跟踪模型的训练方法或权利要求30或31所述的物体跟踪方法。
CN202310010750.6A 2023-01-05 2023-01-05 物体跟踪方法、跟踪模型训练方法、装置、设备和介质 Active CN115909173B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310010750.6A CN115909173B (zh) 2023-01-05 2023-01-05 物体跟踪方法、跟踪模型训练方法、装置、设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310010750.6A CN115909173B (zh) 2023-01-05 2023-01-05 物体跟踪方法、跟踪模型训练方法、装置、设备和介质

Publications (2)

Publication Number Publication Date
CN115909173A CN115909173A (zh) 2023-04-04
CN115909173B true CN115909173B (zh) 2023-09-26

Family

ID=86482541

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310010750.6A Active CN115909173B (zh) 2023-01-05 2023-01-05 物体跟踪方法、跟踪模型训练方法、装置、设备和介质

Country Status (1)

Country Link
CN (1) CN115909173B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110298238A (zh) * 2019-05-20 2019-10-01 平安科技(深圳)有限公司 行人视觉跟踪方法、模型训练方法、装置、设备及存储介质
CN111882580A (zh) * 2020-07-17 2020-11-03 元神科技(杭州)有限公司 一种视频多目标跟踪方法及系统
CN113297905A (zh) * 2021-04-19 2021-08-24 北京迈格威科技有限公司 一种目标跟踪方法、装置和电子系统
CN114913200A (zh) * 2022-03-11 2022-08-16 中国科学院自动化研究所 基于时空轨迹关联的多目标跟踪方法及系统
CN115482255A (zh) * 2022-08-03 2022-12-16 广州文远知行科技有限公司 障碍物追踪方法、装置、设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110298238A (zh) * 2019-05-20 2019-10-01 平安科技(深圳)有限公司 行人视觉跟踪方法、模型训练方法、装置、设备及存储介质
CN111882580A (zh) * 2020-07-17 2020-11-03 元神科技(杭州)有限公司 一种视频多目标跟踪方法及系统
CN113297905A (zh) * 2021-04-19 2021-08-24 北京迈格威科技有限公司 一种目标跟踪方法、装置和电子系统
CN114913200A (zh) * 2022-03-11 2022-08-16 中国科学院自动化研究所 基于时空轨迹关联的多目标跟踪方法及系统
CN115482255A (zh) * 2022-08-03 2022-12-16 广州文远知行科技有限公司 障碍物追踪方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN115909173A (zh) 2023-04-04

Similar Documents

Publication Publication Date Title
JP6294615B2 (ja) 移動物体の検知および追跡のためのシステムおよび方法
US10679369B2 (en) System and method for object recognition using depth mapping
CN113378770B (zh) 手势识别方法、装置、设备、存储介质
WO2021249114A1 (zh) 目标跟踪方法和目标跟踪装置
CN115797736B (zh) 目标检测模型的训练和目标检测方法、装置、设备和介质
CN113177968A (zh) 目标跟踪方法、装置、电子设备及存储介质
CN115860102B (zh) 一种自动驾驶感知模型的预训练方法、装置、设备和介质
CN111652181B (zh) 目标跟踪方法、装置及电子设备
CN115719436A (zh) 模型训练方法、目标检测方法、装置、设备以及存储介质
Valappil et al. CNN-SVM based vehicle detection for UAV platform
CN114241379A (zh) 一种乘客异常行为识别方法、装置、设备及乘客监控系统
CN114169425A (zh) 训练目标跟踪模型和目标跟踪的方法和装置
CN115880555B (zh) 目标检测方法、模型训练方法、装置、设备及介质
CN116664851A (zh) 一种基于人工智能的自动驾驶数据提取方法
CN115909173B (zh) 物体跟踪方法、跟踪模型训练方法、装置、设备和介质
CN116012609A (zh) 一种环视鱼眼多目标跟踪方法、装置、电子设备及介质
KR20230166840A (ko) 인공지능을 이용한 객체 이동 경로 확인 방법
Thakur et al. Autonomous pedestrian detection for crowd surveillance using deep learning framework
CN111062311B (zh) 一种基于深度级可分离卷积网络的行人手势识别与交互方法
Kim et al. Development of a real-time automatic passenger counting system using head detection based on deep learning
CN114820700B (zh) 对象跟踪方法及装置
CN115147809B (zh) 一种障碍物检测方法、装置、设备以及存储介质
Cheng et al. G-Fusion: LiDAR and Camera Feature Fusion on the Ground Voxel Space
CN116363615B (zh) 数据融合方法、装置、车辆和存储介质
CN117523428B (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