动态预测方法、系统及所适用的设备与流程

文档序号:15449544发布日期:2018-09-14 23:48阅读:177来源:国知局

本申请涉及图像分析技术领域,特别是涉及一种动态预测方法、系统及所适用的设备。



背景技术:

近年来,得益于大数据的普及和计算能力的提升,强化学习与深度学习的结合即深度强化学习取得了开拓性进展。在实际应用中,泛化和可解释性是深度强化学习面临的主要挑战。其中,泛化是指模型对新鲜样本的适应,即训练好的模型在未见过数据上的表现。可解释性是指区别于“黑盒子”而能够解释是如何解决问题的特性。一般地,为了解决上述问题,关键是要从物体层面学习智能体行为的作用其中,智能体表示具备行为能力的物体,如机器人、无人车等。

然而,针对智能体行为的作用的学习,现有技术通常采用的以行为为条件的动态预测(dynamicsprediction)集中于像素级运动且直接预测行为的作用,这限制了对于所学习动态的可解释性和泛化能力。



技术实现要素:

鉴于以上所述现有技术的缺点,本申请的目的在于提供一种动态预测方法、系统及所适用的设备,用于解决现有技术中动态预测方面存在的泛化能力低及不可解释的问题。

为实现上述目的及其他相关目的,本申请的第一方面提供一种动态预测方法,包括以下步骤:获取当前帧图像;基于所述当前帧图像确定包括待预测对象的待预测对象掩码矩阵以及包括参照对象的参照对象掩码矩阵;基于所述待预测对象掩码矩阵和所述参照对象掩码矩阵之间的关系以及预设行为预测所述待预测对象的运动。

在本申请的第一方面的某些实施方式中,所述待预测对象掩码矩阵是基于所述待预测对象确定的,所述参照对象掩码矩阵是基于所述参照对象与所述待预测对象运动的关联关系或所述参照对象的种类确定的。

在本申请的第一方面的某些实施方式中,所述基于所述当前帧图像确定包括待预测对象的待预测对象掩码矩阵以及包括参照对象的参照对象掩码矩阵的步骤包括:使用预先训练的第一卷积神经网络基于所述当前帧图像确定包括待预测对象的待预测对象掩码矩阵以及包括参照对象的参照对象掩码矩阵。

在本申请的第一方面的某些实施方式中,所述基于所述待预测对象掩码矩阵和所述参照对象掩码矩阵之间的关系以及预设行为预测所述待预测对象的运动的步骤包括:以所述待预测对象掩码矩阵中待预测对象的位置为中心依据预设视野窗尺寸对所述参照对象掩码矩阵进行裁剪以获得经裁剪的参照对象掩码矩阵;基于预先训练的第二卷积神经网络确定所述经裁剪的参照对象掩码矩阵所表示的参照对象对所述待预测对象的作用;基于预设行为和所确定的作用预测所述待预测对象的运动。

在本申请的第一方面的某些实施方式中,所述动态预测方法还包括以下步骤:对所获得的经裁剪的参照对象掩码矩阵添加位置信息并基于预先训练的第二卷积神经网络确定所述经裁剪的参照对象掩码矩阵所表示的参照对象对所述待预测对象的作用。

在本申请的第一方面的某些实施方式中,所述作用还包括预设的待预测对象自身的作用。

在本申请的第一方面的某些实施方式中,所述动态预测方法还包括以下步骤:从所述当前帧图像中提取时不变背景;结合所提取的时不变背景和所预测的待预测对象的运动获得下一帧图像。

在本申请的第一方面的某些实施方式中,所述动态预测方法还包括以下步骤:基于预先训练的第三卷积神经网络从所述当前帧图像中提取时不变背景;结合所提取的时不变背景和所预测的待预测对象的运动获得下一帧图像。

在本申请的第一方面的某些实施方式中,所述第三卷积神经网络设置为卷积反卷积结构。

在本申请的第一方面的某些实施方式中,所述第一卷积神经网络、所述第二卷积神经网络以及所述第三卷积神经网络是根据损失函数经统一训练获得的。

在本申请的第一方面的某些实施方式中,所述当前帧图像是基于原始数据或具有先验知识的外部输入数据获得的。

本申请的第二方面还提供一种动态预测系统,包括:获取单元,用于获取当前帧图像;对象检测单元,用于基于所述当前帧图像确定包括待预测对象的待预测对象掩码矩阵以及包括参照对象的参照对象掩码矩阵;预测单元,用于基于所述待预测对象掩码矩阵和所述参照对象掩码矩阵之间的关系以及预设行为预测所述待预测对象的运动。

在本申请的第二方面的某些实施方式中,所述待预测对象掩码矩阵是基于所述待预测对象确定的,所述参照对象掩码矩阵是基于所述参照对象与所述待预测对象运动的关联关系或所述参照对象的种类确定的。

在本申请的第二方面的某些实施方式中,所述对象检测单元用于使用预先训练的第一卷积神经网络基于所述当前帧图像确定包括待预测对象的待预测对象掩码矩阵以及包括参照对象的参照对象掩码矩阵。

在本申请的第二方面的某些实施方式中,所述预测单元包括:裁剪模块,用于以所述待预测对象掩码矩阵中待预测对象的位置为中心依据预设视野窗尺寸对所述参照对象掩码矩阵进行裁剪以获得经裁剪的参照对象掩码矩阵;作用确定模块,用于基于预先训练的第二卷积神经网络确定所述经裁剪的参照对象掩码矩阵所表示的参照对象对所述待预测对象的作用;预测模块,用于基于预设行为和所确定的作用预测所述待预测对象的运动。

在本申请的第二方面的某些实施方式中,所述作用确定模块用于对所获得的经裁剪的参照对象掩码矩阵添加位置信息并基于预先训练的第二卷积神经网络确定所述经裁剪的参照对象掩码矩阵所表示的参照对象对所述待预测对象的作用。

在本申请的第二方面的某些实施方式中,所述作用还包括预设的待预测对象自身的作用。

在本申请的第二方面的某些实施方式中,所述动态预测系统还包括:提取单元,用于从所述当前帧图像中提取时不变背景;所述预测单元还用于结合所提取的时不变背景和所预测的待预测对象的运动获得下一帧图像。

在本申请的第二方面的某些实施方式中,所述提取单元用于基于预先训练的第三卷积神经网络从所述当前帧图像中提取时不变背景;所述预测单元还用于结合所提取的时不变背景和所预测的待预测对象的运动获得下一帧图像。

在本申请的第二方面的某些实施方式中,所述第三卷积神经网络设置为卷积反卷积结构。

在本申请的第二方面的某些实施方式中,所述第一卷积神经网络、所述第二卷积神经网络以及所述第三卷积神经网络是根据损失函数经统一训练获得的。

在本申请的第二方面的某些实施方式中,所述当前帧图像是基于原始数据或具有先验知识的外部输入数据获得的。

本申请的第三方面还提供一种计算机可读存储介质,存储有至少一种程序,所述至少一种程序被执行时实现上述中任一所述的动态预测方法。

本申请的第四方面还提供一种设备,包括:存储装置,用于存储至少一个程序;处理装置,与所述存储装置相连,用于调用所述至少一个程序以执行如权利要求1-11中任一所述的动态预测方法。

在本申请的第四方面的某些实施方式中,所述设备还包括显示装置,所述显示装置用于显示所述待预测对象掩码矩阵、所述参照对象掩码矩阵、经预测的所述待预测对象的运动数据中至少之一。

在本申请的第四方面的某些实施方式中,所述处理装置还用于基于所述当前帧图像、所述待预测对象掩码矩阵以及所述参照对象掩码矩阵生成待预测对象掩码图像和参照对象掩码图像;所述显示装置还用于显示所述待预测对象掩码图像和/或所述参照对象掩码图像。

在本申请的第四方面的某些实施方式中,所述处理装置还用于基于所述待预测对象掩码图像和所述参照对象掩码图像生成对象掩码图像;所述显示装置还用于显示所述对象掩码图像。

如上所述,本申请的动态预测方法、系统及所适用的设备,具有以下有益效果:本申请的动态预测方法通过将所获取的当前帧图像分割成待预测对象和参照对象,并基于由对象掩码矩阵表示的参照对象掩码矩阵与待预测对象掩码矩阵之间的关系以及预设行为来预测待预测对象的运动,使得能够提高动态预测的泛化能力,并且采用掩码矩阵表示对象,使得所述预测过程可解释。

附图说明

图1显示为应用本申请动态预测方法的示例场景在一种实施方式中的示意图。

图2显示为本申请动态预测方法在一种实施方式中的流程图。

图3显示为本申请动态预测方法采用的卷积神经网络在一种实施方式中的结构示意图。

图4显示为本申请动态预测方法中步骤s150在一种实施方式中的流程图。

图5显示为本申请动态预测方法在另一种实施方式中的流程图。

图6显示为本申请动态预测方法采用的第三卷积神经网络在另一种实施方式中的结构示意图。

图7显示为本申请动态预测系统在一种实施方式中的结构示意图。

图8显示为本申请动态预测系统中的预测单元在一种实施方式中的结构示意图。

图9显示为本申请动态预测系统中的预测单元在另一种实施方式中的结构示意图。

图10显示为本申请动态预测系统在另一种实施方式中的结构示意图。

图11显示为本申请动态预测系统在又一种实施方式中的结构示意图。

图12显示为本申请设备在一种实施方式中的结构示意图。

图13显示为本申请设备在另一种实施方式中的结构示意图。

具体实施方式

以下由特定的具体实施例说明本申请的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本申请的其他优点及功效。

在下述描述中,参考附图,附图描述了本申请的若干实施例。应当理解,还可使用其他实施例,并且可以在不背离本公开的精神和范围的情况下进行组成以及操作上的改变。下面的详细描述不应该被认为是限制性的,并且本申请的实施例的范围仅由本申请的专利的权利要求书所限定。这里使用的术语仅是为了描述特定实施例,而并非旨在限制本申请。

虽然在一些实例中术语第一、第二等在本文中用来描述各种要素,但是这些要素不应当被这些术语限制。这些术语仅用来将一个要素与另一个要素进行区分。例如,第一待预测对象可以被称作第二待预测对象,并且类似地,第二待预测对象可以被称作第一待预测对象,而不脱离各种所描述的实施例的范围。第一待预测对象和第二待预测对象均是在描述一个待预测对象,但是除非上下文以其他方式明确指出,否则它们不是同一个待预测对象。相似的情况还包括第一组参照对象和第二组参照对象,等。

再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在所述的特征、步骤、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、步骤、操作、元件、组件、项目、种类、和/或组的存在、出现或添加。此处使用的术语“或”和“和/或”被解释为包括性的,或意味着任一个或任何组合。因此,“a、b或c”或者“a、b和/或c”意味着“以下任一个:a;b;c;a和b;a和c;b和c;a、b和c”。仅当元件、功能、步骤或操作的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。

深度强化学习是将深度学习与强化学习结合起来从而实现从感知到动作的端对端学习,其具备使智能体实现完全自主学习的潜力。在实际应用中,泛化和可解释性是深度强化学习面临的主要挑战。解决上述挑战的关键是从物体层面学习智能体行为的作用。然而,针对对智能体行为的作用的学习,现有技术在以行为为条件的动态预测方面取得了重大进展,但仍受到一些限制。首先,现有技术采用的以行为为条件的动态预测仅集中于像素级运动而非遵循面向对象的范式,忽略了物体是物理动力学的基本原型且总是作为一个整体进行移动的事实,因而所预测的移动对象通常具有模糊的轮廓和纹理。其次,现有技术采用的以行为为条件的动态预测直接预测行为而不是以物体间关系为条件进行预测,限制了对于所学习动态的可解释性和泛化能力。

鉴于此,本申请提供一种动态预测方法,所述动态预测方法以视频帧和智能体的行为为输入,将环境分割为对象并且以行为和对象间关系为条件进行预测,因而,所述动态预测方法还可以称为面向对象的动态预测方法。其中,所述对象是指作为目标的事物,在动态预测所应用的环境中,所述对象通常是指环境中的物体,例如稍后描述的示例应用场景中的梯子、智能体等。

为了能够清楚描述本申请的动态预测方法,现结合示例应用场景对所述动态预测方法进行详细说明。请参阅图1,图1显示为应用本申请动态预测方法的示例场景在一种实施方式中的示意图,如图所示,所述示例场景包括梯子a、墙壁b、空间c以及智能体d。此外,基于该示例场景,智能体a的预设行为可以包括向上、向下、向左、向右以及无操作。在实际应用中,智能体d在遇到梯子a时可以向上或向下移动,智能体d在碰到墙壁b时会卡住不能移动,智能体d在处于空间c时会掉落。

需要说明的是,上述应用场景的形式、各要素及其数量仅为举例,而非对本申请应用场景及各要素的限制。事实上,所述应用场景可以是需要进行动态预测的其他场景,此外,还可以存在在同一应用场景下有多个智能体的情况,在此不再一一赘述。

请参阅图2,图2显示为本申请动态预测方法在一种实施方式中的流程图,如图所示,所述动态预测方法包括步骤s110、步骤s130以及步骤s150。以下结合图1和图2来描述本申请的动态预测方法。

在步骤s110中,获取当前帧图像。

其中,所述当前帧图像是相对于稍后描述的下一帧图像而言的。本示例中,当前帧图像指在第t时刻的图像i(t),下一帧图像指在待预测的第t+1时刻的图像i(t+1)。在下面的描述中,以图1所示的示例场景图像表示当前帧图像i(t)。

另外,在某些实施例中,所述当前帧图像可以是基于原始数据获得的。在另一些实施例中,所述当前帧图像可以是基于具有先验知识的外部输入数据获得的。其中,所述先验知识是指预先已知的信息。在本示例中,具有先验知识的外部输入数据可以包括通过例如前景检测方式获得的有利于确定稍后描述的包括待预测对象的待预测对象掩码矩阵的动态区域信息,使得在稍后描述的确定待预测对象掩码矩阵的步骤中可以参考所述动态区域信息而集中在所述动态区域内确定待预测对象掩码矩阵以提高识别率。

在步骤s130中,基于当前帧图像确定包括待预测对象的待预测对象掩码矩阵以及包括参照对象的参照对象掩码矩阵。

其中,所述待预测对象是指在当前场景下其动态需要被预测的可移动物体,例如图1中所示的智能体d,所述待预测对象由于其可移动的运动属性还可以被称为动态对象。所述参照对象是指在当前场景下除去所述待预测对象以外的其他对象。在某些实施例中,当前场景下的对象可以基于运动属性划分为静态对象和动态对象,则,在这样的情况下,所述参照对象可以包括静态对象、除去作为待预测对象的动态对象以外的其他动态对象。以图1为例,所述参照对象可以包括图1中所示的梯子a、墙壁b以及空间c,其中梯子a在当前场景下静止不动且可以允许待预测对象在与梯子a重合的位置处上下移动和左右平移,墙壁b在当前场景下静止不动且可以阻止待预测对象向墙壁b所在位置方向移动,空间c在当前场景下静止不动且可以使待预测对象沿各方向移动。其中,梯子a、墙壁b以及空间c由于其静止不动的运动属性还可以被称为静态对象。此外,例如,若图1中还包括智能体d′,智能体d′类似于智能体d为可移动的动态对象,则智能体d′也是与作为待预测对象的智能体d对应的参照对象。鉴于此,对于待预测对象智能体d,与其对应的参照对象包括梯子a、墙壁b、空间c以及智能体d′。

在某些实施例中,在示例场景中包括一个独立的动态对象的情况下,所述动态对象为待预测对象,与该待预测对象对应有一个或多个参照对象,所述一个或多个参照对象称为与该待预测对象对应的一组参照对象,以图1为例,所述待预测对象为一个智能体d,所述一组参照对象包括梯子a、墙壁b以及空间c。在另一些实施例中,在示例场景中包括两个或更多个独立的动态对象的情况下,可以针对所述两个或多个动态对象分别进行预测,则与两个或多个动态对象对应有两个或更多个待预测对象,与所述两个或更多个待预测对象对应有两组或更多组参照对象,其中,每组参照对象包括当前帧图像中除去待预测对象之外的其他对象。例如,在示例场景中包括两个智能体d且每个智能体d在当前场景中的移动方式类似的情况下,两个智能体d分别表示为第一待预测对象和第二待预测对象,则与第一待预测对象对应有第一组参照对象,第一组参照对象包括梯子a、墙壁b、空间c以及第二待预测对象。与第二待预测对象对应有第二组参照对象,第二组参照对象包括梯子a、墙壁b、空间c以及第一待预测对象。

需要说明的是,上述待预测对象和参照对象仅为举例,本领域技术人员可以基于不同的应用场景确定相应的待预测对象和参照对象,在此不再一一赘述。

此外,所述待预测对象掩码矩阵是指对当前帧图像进行遮挡后得到的仅包括待预测对象的掩码矩阵,所述参照对象掩码矩阵是指对当前帧图像进行遮挡后得到的仅包括参照对象的掩码矩阵。其中,物体的掩码矩阵表示图像的每个像素属于该物体的概率,所述概率是介于0-1之间的数字,其中,0表示属于该物体的概率为0,1表示属于该物体的概率为1。为方便描述起见,待预测对象掩码矩阵和参照对象掩码矩阵统称为对象掩码矩阵。另外,基于上述一个待预测对象对应有一组参照对象的情况,相应地,所述一个待预测对象掩码矩阵对应有一组参照对象掩码矩阵。

在某些实施例中,所述待预测对象掩码矩阵是基于待预测对象确定的,所述参照对象掩码矩阵是基于参照对象与待预测对象运动的关联关系或参照对象的种类确定的。也就是说,所述待预测对象掩码矩阵是特定于对象确定的,所述参照对象掩码矩阵是特定于类确定的。

例如,关于待预测对象掩码矩阵,针对待预测对象例如智能体d生成对应的待预测对象掩码矩阵,在存在多个智能体d的情况下,生成对应每个智能体d的多个待预测对象掩码矩阵。

关于参照对象掩码矩阵,根据参照对象与对应待预测对象运动的关联关系生成与所述关联关系对应的各类参照对象掩码矩阵,其中,所述关联关系即参照对象对待预测对象的移动所产生的影响。也就是说,所述关联关系可以基于参照对象对待预测对象的影响来划分。所述影响取决于参照对象相对于待预测对象的运动状态以及参照对象的运动属性。以图1为例,图1所示的示例场景中包括能够使待预测对象攀爬的静态对象梯子a、阻止待预测对象移动的静态对象墙壁b以及能够使待预测对象掉落的静态对象空间c,虽然示例场景中示出了多个梯子a、墙壁b以及空间c,但是基于参照对象相对于待预测对象的运动关系,可以生成与梯子a一类的参照对象对应的梯子类参照对象掩码矩阵,类似的,生成与墙壁b一类的参照对象对应的墙壁类参照对象掩码矩阵,生成与空间c一类的参照对象对应的空间类参照对象掩码矩阵。另外,若图1中的示例场景中还包括作为静态对象的彩旗,所述彩旗仅表示智能体d需要到达的最终目的地但不影响智能体d的移动,则基于参照对象相对于待预测对象的运动关系,可以生成彩旗类参照对象掩码矩阵。此外,若图1中的示例场景中还包括障碍物,所述障碍物也是用来阻止待预测对象移动的静态对象,则,基于参照对象相对于待预测对象的运动关系,可以生成与墙壁b一类的参照对象和障碍物一类的参照对象对应的阻止类参照对象掩码矩阵。此外,若在图1所示的场景包括两个智能体即两个动态对象,则可以分别对两个智能体进行预测,在这种情况下,两个智能体分别称为第一待预测对象和第二待预测对象。在对第一待预测对象进行预测时,为动态对象的第二待预测对象作为第一待预测对象的参照对象。在对第二待预测对象进行预测时,为动态对象的第一待预测对象作为第二待预测对象的参照对象。鉴于此,对应有第一待预测对象掩码矩阵、第二待预测对象掩码矩阵、与第一待预测对象掩码矩阵对应的第一组参照对象掩码矩阵以及与第二待预测对象掩码矩阵对应的第二组参照对象掩码矩阵。其中第一组参照对象掩码矩阵包括梯子类参照对象掩码矩阵、墙壁类参照对象掩码矩阵(或阻止类参照对象掩码矩阵)、空间类参照对象掩码矩阵、彩旗类参照对象掩码矩阵以及第二待预测对象掩码矩阵。第二组参照对象掩码矩阵包括梯子类参照对象掩码矩阵、墙壁类参照对象掩码矩阵(或阻止类参照对象掩码矩阵)、空间类参照对象掩码矩阵、彩旗类参照对象掩码矩阵以及第一待预测对象掩码矩阵。

或者,关于参照对象掩码矩阵,还可以根据参照对象的种类确定参照对象掩码矩阵。例如,如上所述在图1中的示例场景中包括障碍物的情况下,所述障碍物也是用来阻止待预测对象移动的静态对象但与墙壁b属于不同种类,则基于参照对象的种类,可以分别生成与墙壁b一类的参照对象对应的墙壁类参照对象掩码矩阵,以及与障碍物一类的参照对象对应的障碍物类参照对象掩码矩阵。

为了简化起见,本申请以示例场景包括一个待预测对象、所述待预测对象对应有一组参照对象、且包括参照对象的参照对象掩码矩阵是基于参照对象与所述待预测对象运动的关联关系确定的为例进行描述,但本申请并不限于此。本领域技术人员应理解,基于应用场景的不同,本申请也可以应用于包括多个待预测对象和与待预测对象对应的多组参照对象的情况,在此不再一一赘述。

在一实施例中,可以采用例如前景检测方式从序列图像中获得待预测对象、基于预先输入的应用场景中参照对象的特征以通过特征识别来获得参照对象、通过掩码矩阵对包括待预测对象和参照对象的当前帧图像进行掩码矩阵处理以获得待预测对象掩码矩阵和参照对象掩码矩阵。其中,所述待预测对象掩码矩阵和参照对象掩码矩阵分别包括该掩码矩阵在当前帧图像中的位置信息,以使得可以通过所述位置信息确定待预测对象掩码矩阵和参照对象掩码矩阵相对于当前帧图像的位置。在一示例中,所述参照对象掩码矩阵和所述待预测对象掩码矩阵是基于当前帧图像以原图大小进行掩码矩阵运算得到的。

在另一实施例中,可以使用预先训练的第一卷积神经网络基于所述当前帧图像确定包括待预测对象的待预测对象掩码矩阵以及包括参照对象的参照对象掩码矩阵。在一示例中,第一卷积神经网络可以包括多个结构相同但权重不同的卷积神经网络。可以将当前帧图像输入预先训练的各卷积神经网络,各卷积神经网络的输出层经由通道彼此互连形成全连接特征图,后接逐像素(pixel-wise)softmax层以获得特定于对象的待预测对象掩码矩阵和特定于类的参照对象掩码矩阵,其中,所述卷积神经网络的个数可以基于对象掩码矩阵的个数来确定。以图1为例,根据图1所示的示例场景,对象掩码矩阵包括一个待预测对象掩码矩阵和三个参照对象掩码矩阵,因而,可通过四个卷积神经网络获得对应的四个对象掩码矩阵,所述四个卷积神经网络可以具有相同结构但具有不同权重。若图1所示的示例场景包括两个动态对象即智能体d,则相对地,通过五个卷积神经网络获得对应的五个对象掩码矩阵,所述五个卷积神经网络可以具有相同结构但具有不同权重。

例如,请参阅图3,图3显示为本申请动态预测方法采用的卷积神经网络在一种实施方式中的结构示意图,如图所示,所述卷积神经网络的结构可以为多层卷积加全卷积结构,其中,i(t)表示当前帧图像,实线箭头表示卷积加激活函数,虚线箭头表示放大加全连接,长短间隔虚线箭头表示复制加全连接,本示例中,激活函数选用relu。其中,可以设置conv(f,k,s)表示具有f个滤波器、卷积核为k且步长为s的卷积层,假设r()表示激活函数层即relu层,bn()表示批归一化层,则图3中所示的五个卷积层可以分别表示为r(bn(conv(64,5,2)))、r(bn(conv(64,3,2)))、r(bn(conv(64,3,1)))、r(bn(conv(32,1,1)))、r(bn(conv(1,3,1)))。

需要说明的是,上述卷积神经网络的结构和参数仅为举例,本领域技术人员可以基于不同应用场景中所包括的待预测对象和参照对象对卷积神经网络的结构和参数进行变型和修改,在此不再一一赘述。

在步骤s150中,基于待预测对象掩码矩阵和参照对象掩码矩阵之间的关系以及预设行为预测待预测对象的运动。

其中,所述预设行为是基于应用场景预先设置的。所述预设行为可以例如采用编码的形式输出面向机器的对待预测对象的运动进行控制的一个或多个行为,如“行为1”、“行为2”等。另外,所述行为在具体的应用场景中可以指代对应的具体行为。以图1为例,在图1所示的示例场景中,预设行为可以包括行为1至行为5,其中,应用于该场景中,行为1至行为5分别表示向上、向下、向左、向右以及无操作。所述预设行为可通过编码例如one-hot编码的方式设置。

本申请中,以预设行为以及待预测对象掩码矩阵和参照对象掩码矩阵之间的关系来预测待预测对象的运动。在一些实施例中,还可以基于待预测对象掩码矩阵和参照对象掩码矩阵之间的关系以及预设行为预测包括待预测对象和参照对象在内的所有对象的运动,但该预测方式相较于仅预测待预测对象的运动而言计算量大,效率低下。

以图1为例,在图1所示的应用场景中,待预测对象掩码矩阵为包括智能体d的第一待预测对象掩码矩阵,参照对象掩码矩阵分别为包括梯子a的第一类参照对象掩码矩阵、包括墙壁b的第二类参照对象掩码矩阵以及包括空间c的第三类参照对象掩码矩阵,其中,所述第一类参照对象掩码矩阵、第二类参照对象掩码矩阵以及第三类参照对象掩码矩阵统称为对应于第一待预测对象掩码矩阵的第一组参照对象掩码矩阵。待预测对象掩码矩阵与参照对象掩码矩阵之间的关系包括第一类参照对象掩码矩阵基于预设行为对待预测对象掩码矩阵的作用、第二类参照对象掩码矩阵基于预设行为对待预测对象掩码矩阵的作用以及第三类参照对象矩阵基于预设行为对待预测对象掩码矩阵的作用。

此外,所预测的待预测对象的运动可以包括但不限于待预测对象运动的方向、移动距离、待预测对象运动后的位置信息等。

请参阅图4,图4显示为本申请动态预测方法中步骤s150在一种实施方式中的流程图,如图所示,步骤s150可以包括步骤s1501、步骤s1503以及步骤s1505。

在步骤s1501中,以待预测对象掩码矩阵中待预测对象的位置为中心依据预设视野窗尺寸对参照对象掩码矩阵进行裁剪以获得经裁剪的参照对象掩码矩阵。

其中,待预测对象的位置是基于待预测对象掩码矩阵的期望位置限定的。例如,对于第j个待预测对象dj,其位置可通过下述公式(1)表示:

其中,h和w分别表示图像的高度和宽度,mdj表示第j个待预测对象的待预测对象掩码矩阵。

另外,视野窗尺寸是指能够表示对象间关系的最大有效范围。其中,对象间关系是指待预测对象和参照对象之间的关系。视野窗尺寸可以是技术人员基于经验预先设置的。假设视野窗尺寸为w,则以为中心、尺寸为w的视野窗bw通过下述公式(2)表示:

也就是说,基于上述公式(1)和公式(2),以待预测对象为中心,根据bw对参照对象掩码矩阵进行裁剪。在一示例中,可以通过双线性采样方式来实现裁剪处理。另外,在预设视野窗尺寸等于原始输入图像尺寸的情况下,可视为不裁剪。由于在实际应用中,局部性原理通常存在于对象间关系,因而本申请通过裁剪处理引入局部性原理,进而将对待预测对象动态的影响集中在待预测对象和与其相邻的其他对象之间的关系上。

在步骤s1503中,基于预先训练的第二卷积神经网络确定经裁剪的参照对象掩码矩阵所表示的参照对象对待预测对象的作用。

在一实施例中,可以将在步骤s1501中获得的经裁剪的参照对象掩码矩阵输入预先训练的第二卷积神经网络,其中,第二卷积神经网络可以包括具有相同结构但不同权重的多个卷积神经网络。在另一实施例中,还可以先对所获得的经裁剪的参照对象掩码矩阵添加位置信息,然后将在步骤s1501中获得的经裁剪的参照对象掩码矩阵和xy坐标图输入预先训练的第二卷积神经网络。其中,对所获得的经裁剪的参照对象掩码矩阵添加位置信息以使得后续处理对位置信息更敏感。例如,将经裁剪的参照对象掩码矩阵与恒定的xy坐标图相连以将空间信息添加到网络中,进而增加位置的变化,减少对称性。

所述第二卷积神经网络用于确定参照对象对待预测对象的运动的作用。假设在应用场景中,no表示对象掩码矩阵的总数量,nd表示待预测对象的个数,则针对(no-1)×nd对对象,总第二卷积神经网络共包括(no-1)×nd个卷积神经网络。以图1为例,在图1所示的场景中,对象掩码矩阵包括一个待预测对象掩码矩阵和三个参照对象掩码矩阵,其中,待预测对象掩码矩阵为包括智能体d的待预测对象掩码矩阵,参照对象掩码矩阵分别为包括梯子a的第一类参照对象掩码矩阵、包括墙壁b的第二类参照对象掩码矩阵以及包括空间c的第三类参照对象掩码矩阵,因而,可通过三个卷积神经网络获得对应的三类参照对象对一个待预测对象的作用。此外,类似地,若在应用场景中包括两个动态对象,也就是说,若在应用场景中包括两个智能体d,则可以分别对两个动态对象进行预测,所述动态对象分别由第一待预测对象和第二待预测对象表示,则相应地,所述应用场景中共有五个对象掩码矩阵,分别为第一预测对象掩码矩阵、第二预测对象掩码矩阵、第一类参照对象掩码矩阵、第二类参照对象掩码矩阵以及第三类参照对象掩码矩阵。相应地,与第一预测对象掩码矩阵对应的第一组参照对象掩码矩阵包括:第二预测对象掩码矩阵、第一类参照对象掩码矩阵、第二类参照对象掩码矩阵以及第三类参照对象掩码矩阵。则针对第一预测对象,需要有对应的四个卷积神经网络,上述四个卷积神经网络构成与第一预测对象对应的第一组卷积神经网络。另外,与第二预测对象掩码矩阵对应的第二组参照对象掩码矩阵包括:第一预测对象掩码矩阵、第一类参照对象掩码矩阵、第二类参照对象掩码矩阵以及第三类参照对象掩码矩阵。则针对第二预测对象,需要有对应的四个卷积神经网络,上述四个卷积神经网络构成与第二预测对象对应的第二组卷积神经网络。综上,第二卷积神经网络包括分别对应于待预测对象的两组共八个卷积神经网络。

为了便于描述,以示例场景包括一个待预测对象,对应一组卷积神经网络为例进行描述,但本申请不限于此,本领域技术人员应该理解,在包括两个或更多个待预测对象,相应地包括两组或更多组卷积神经网络的情况下,可以并行处理以分别获得每组参照对象对相应待预测对象的作用。

在以图1为例的示例中,对象掩码矩阵包括一个待预测对象掩码矩阵和三个参照对象掩码矩阵,则第二卷积神经网络包括三个卷积神经网络,所述三个卷积神经网络可以具有相同结构但具有不同权重。在一具体实现中,所述卷积神经网络的结构类似于图3所示结构。卷积神经网络的连接顺序为r(bn(conv(16,3,2)))、r(bn(conv(32,3,2)))、r(bn(conv(64,3,2)))、r(bn(conv(128,3,2))),最后一个卷积层依次由128维隐藏层和2维输出层重构且全连接。

需要说明的是,上述卷积神经网络的结构和参数仅为举例,本领域技术人员可以基于不同应用场景中所包括的待预测对象、参照对象以及参照对象基于预设行为对待预测对象的作用来对卷积神经网络的结构和参数进行变型和修改,在此不再一一赘述。

在此,所述作用是基于卷积神经网络学习到的参照对象对待预测对象基于行为的移动所产生的效果。例如,在待预测对象当前位于梯子处且输入的行为为向上的情况下,所述效果即表示待预测对象沿梯子向上移动一设置距离,所述作用例如能够表示所述效果的向量。再如,在待预测对象当前位于上述的彩旗左方且输入的行为为向右的情况下,由于彩旗对待预测对象的运动无影响,则对应的彩旗类参照对象掩码对待预测对象掩码的作用可以表示为0。

另外,所述作用还可以包括预设的待预测对象自身的作用。例如,基于应用场景预先设置的待预测对象在任何情况下都向右移动一定距离,因而,在考虑到参照对象对待预测对象的作用的情况下,还需考虑待预测对象自身的作用以最终确定待预测对象基于行为的移动。所述作用例如由向量表示。

在步骤s1505中,基于预设行为和所确定的作用预测待预测对象的运动。

在一实施例中,将经裁剪的各参照对象掩码矩阵基于各卷积神经网络获得的各参照对象掩码矩阵所表示的参照对象对待预测对象的作用与待预测对象自身作用相加并与基于例如one-hot编码的预设行为相乘以得到对待预测对象的动态预测。

在另一实施例中,将经裁剪的各参照对象掩码矩阵基于各卷积神经网络获得的各参照对象掩码矩阵所表示的参照对象对待预测对象的作用与待预测对象自身作用分别与基于例如one-hot编码的预设行为相乘然后再相加以得到对待预测对象的动态预测。

综上所述,本申请的动态预测方法通过将所获取的当前帧图像分割成待预测对象和参照对象,并基于由对象掩码矩阵表示的参照对象掩码矩阵与待预测对象掩码矩阵之间的关系以及预设行为来预测待预测对象的运动,使得能够提高动态预测的泛化能力,并且采用掩码矩阵表示对象,使得所述预测过程可解释。

在实际应用中,在某些情况下,不仅需要预测待预测对象的运动,还需要预测下一帧图像。鉴于此,请参阅图5,图5显示为本申请动态预测方法在另一种实施方式中的流程图,如图所示,动态预测方法包括步骤s510、步骤s530、步骤s550、步骤s570以及步骤s590。

在步骤s510中,获取当前帧图像。步骤s510与前述举例中的步骤s110的方式相同或相似,在此不再详述。

在步骤s570中,从当前帧图像中提取时不变背景。

其中,所述时不变背景是指图像中不随时间推移而变化的对象所形成的图像。在某些实施例中,可以通过例如前景检测方式获得图像背景。在另一些实施例中,可以基于预先训练的第三卷积神经网络从当前帧图像中提取时不变背景。例如,所述第三卷积神经网络的结构包括但不限于:全卷积、卷积反卷积、残差网络(resnet)、unet等。

在一示例中,所述第三卷积神经网络设置为卷积反卷积结构。请参阅图6,图6显示为本申请动态预测方法采用的第三卷积神经网络在另一种实施方式中的结构示意图,如图所示,所述第三卷积神经网络为编码器解码器结构。其中,i(t)表示当前帧图像,ibg(t)表示当前背景图像,实线箭头表示卷积加激活函数,虚线箭头表示重构,单点划线箭头表示全连接,双点划线箭头表示反卷积加激活函数,本示例中,激活函数选用relu。其中,对于所有的卷积和反卷积,设置卷积核、步长以及通道数分别为3、2以及64,编码器与解码器之间隐藏层的维度为128。另外,针对大量环境的训练,卷积的通道数可以设置为128以提高背景分离的效果。此外,还可以将最后一个反卷积层的激活函数relu替换为tanh函数以输出-1至1范围的值。

在步骤s530中,基于当前帧图像确定包括待预测对象的待预测对象掩码矩阵以及包括参照对象的参照对象掩码矩阵。步骤s530与前述举例中的步骤s130的方式相同或相似,在此不再详述。

在步骤s550中,基于待预测对象掩码矩阵和参照对象掩码矩阵之间的关系以及预设行为预测待预测对象的运动。步骤s550与前述举例中的步骤s150的方式相同或相似,在此不再详述。

在步骤s590中,结合所提取的时不变背景和所预测的待预测对象的运动获得下一帧图像。

其中,所述下一帧图像即上述的与当前帧图像i(t)对应的第t+1时刻的图像i(t+1)。在一实施例中,基于当前帧图像、背景图像、对象掩码矩阵以及所预测的待预测对象的运动,采用空间变换网络(stn)进行空间变换处理以获得下一帧图像。具体地,一方面,基于待预测对象掩码矩阵和所预测的待预测对象的运动,采用第一空间变换网络进行空间变换处理并执行求反运算以与所提取的时不变背景图像进行相乘运算进而获得第t+1时刻的背景图像,其中,所述相乘运算是指进行数组元素相乘算法。另一方面,基于待预测对象掩码矩阵、当前帧图像以及所预测的待预测对象的运动,采用第二空间变换网络进行空间变换处理以获得第t+1时刻的对象图像。对上述第t+1时刻的背景图像和第t+1时刻的对象图像进行相加运算以获得第t+1时刻的图像即下一帧图像,其中所述相加运算是指进行数组元素相加算法。同理,在应用场景包括两个待预测对象的情况下,针对两个待预测对象分别进行动态预测并将结果同时显示在下一帧图像上。

在获得下一帧图像的情况下,可以将下一帧图像即所预测的图像作为新一帧图像提供给步骤s510,如此循环操作以预测待预测对象移动的整个过程。

此外,基于上面的描述,针对本申请采用的神经网络,在训练神经网络时可以引入损失函数对神经网络进行调整,以及在应用时可以依据损失函数来评价当前模型。例如,在本申请中包括但不限于:引入熵损失函数来限制对象掩码矩阵的熵,引入回归损失函数来优化对象掩码矩阵和待预测对象的运动向量,引入像素损失函数来限制图像预测误差、重构当前图像等。在一实施例中,本申请中的所述第一卷积神经网络、所述第二卷积神经网络以及所述第三卷积神经网络是根据损失函数经统一训练获得的。在一示例中,针对当前帧图像是基于原始数据获得的情况,所引入的损失函数如下所示。

1)针对从当前帧图像提取时不变背景的步骤,l背景表示背景损失函数,用于使网络满足时不变性能。

其中,假设h和w分别表示图像的高度和宽度,表示第t时刻背景图像,表示第t+1时刻背景图像,若当前帧图像i(t)∈rh×w×3,则当前帧图像对应的背景图像其中,r表示实数空间,且背景图像的像素不随时间推移而变化。

2)针对基于当前帧图像确定包括待预测对象的待预测对象掩码矩阵以及包括参照对象的参照对象掩码矩阵的步骤,其中,

i)l熵表示逐像素熵损失函数,用来限制对象掩码矩阵的熵。本申请中为了降低每个像素i(u,v)关系的不确定性并激励对象掩码矩阵获得更离散的分布而引入逐像素熵损失。

其中,no表示对象掩码矩阵的总数量,c表示第一卷积神经网络中全连接特征层的第c条通道,f(u,v,c)表示全连接特征层的第c条通道中位置(u,v)处的值,i表示第i个参照对象掩膜矩阵,p表示输入图像的像素i(u,v)属于第c条通道对象的概率。

ii)l捷径表示回归损失函数,用来优化参照对象掩码矩阵和运动矢量,以在重构图像之前提供早期反馈。

其中,no表示对象掩码矩阵的总数量,nd表示独立的待预测对象的数量,j表示第j个待预测对象,t表示第t时刻,t+1表示第t+1时刻,表示待预测对象dj的运动矢量且eself(dj)表示待预测对象自身的作用且e(oi,dj)表示第i个参照对象对第j个待预测对象的作用且nα表示行为的数量,α(t)表示行为且

3)针对基于预设行为和所确定的作用预测所述待预测对象的运动以及结合所提取的时不变背景和所预测的待预测对象的运动获得下一帧图像的步骤,其中,

i)l预测表示图像预测误差,本申请中,使用l2像素损失来限制图像预测误差。

其中,i(t+1)表示第t+1时刻的像素帧,表示所预测的第t+1时刻的像素帧,其中,表示所预测的待预测对象在第t+1时刻的像素帧,表示所预测的参照对象在第t+1时刻的像素帧,stn表示空间变换网络,表示数组元素相乘。

ii)l重构表示重构误差,本申请中,使用类似的l2像素损失来重构当前帧图像。

iii)l一致性误差用来描述对象移动时像素变化的一致性。

综上所述,本申请中所述的第一卷积神经网络、第二卷积神经网络以及第三卷积神经网络是根据经对上述损失函数赋予不同权重并组合起来而获得的总损失函数来进行调整训练的。也就是说,本申请中所述的第一卷积神经网络、第二卷积神经网络以及第三卷积神经网络是基于公式(9)中的总损失进行训练的。

l总=l捷径+λpl预测+λrl重构+λcl一致性误差+λbgl背景+λel熵(公式9)

其中,λp、λr、λc、λbg以及λe表示权重。

另外,针对当前帧图像是基于具有先验知识的外部输入数据获得的情况,在神经网络的训练中引入附加的候选区域误差l候选区域。

其中,表示作为候选的动态区域。

此外,一方面,本申请在进行对象检测时在外观层面上基于当前帧图像确定了包括待预测对象的待预测对象掩码矩阵和包括参照对象的参照对象掩码矩阵,另一方面,在进行动态预测时在关系层面上基于行为及对象间关系也可以确定待预测对象掩码矩阵和参照对象掩码矩阵,因而,可以对二者所确定的结果进行对比补偿以确定更准确的参照对象掩码矩阵和参照对象掩码矩阵。

本申请还提供一种动态预测系统。请参阅图7,图7显示为本申请动态预测系统在一种实施方式中的结构示意图,如图所示,所述动态预测系统包括获取单元11、对象检测单元12以及预测单元13。

获取单元11用于获取当前帧图像。其中,所述当前帧图像是相对于稍后描述的下一帧图像而言的。本示例中,当前帧图像指在第t时刻的图像i(t),下一帧图像指在待预测的第t+1时刻的图像i(t+1)。在下面的描述中,以图1所示的示例场景图像表示当前帧图像i(t)。

另外,在某些实施例中,所述当前帧图像可以是基于原始数据获得的。在另一些实施例中,所述当前帧图像可以是基于具有先验知识的外部输入数据获得的。其中,所述先验知识是指预先已知的信息。在本示例中,具有先验知识的外部输入数据可以包括通过例如前景检测方式获得的有利于确定稍后描述的包括待预测对象的待预测对象掩码矩阵的动态区域信息,使得在稍后描述的确定待预测对象掩码矩阵的步骤中可以参考所述动态区域信息而集中在所述动态区域内确定待预测对象掩码矩阵以提高识别率。

对象检测单元12用于基于当前帧图像确定包括待预测对象的待预测对象掩码矩阵以及包括参照对象的参照对象掩码矩阵。

其中,所述待预测对象是指在当前场景下其动态需要被预测的可移动物体,例如图1中所示的智能体d,所述待预测对象由于其可移动的运动属性还可以被称为动态对象。所述参照对象是指在当前场景下除去所述待预测对象以外的其他对象。在某些实施例中,当前场景下的对象可以基于运动属性划分为静态对象和动态对象,则,在这样的情况下,所述参照对象可以包括静态对象、除去作为待预测对象的动态对象以外的其他动态对象。以图1为例,所述参照对象可以包括图1中所示的梯子a、墙壁b以及空间c,其中梯子a在当前场景下静止不动且可以允许待预测对象在与梯子a重合的位置处上下移动和左右平移,墙壁b在当前场景下静止不动且可以阻止待预测对象向墙壁b所在位置方向移动,空间c在当前场景下静止不动且可以使待预测对象沿各方向移动。其中,梯子a、墙壁b以及空间c由于其静止不动的运动属性还可以被称为静态对象。此外,例如,若图1中还包括智能体d′,智能体d′类似于智能体d为可移动的动态对象,则智能体d′也是与作为待预测对象的智能体d对应的参照对象。鉴于此,对于待预测对象智能体d,与其对应的参照对象包括梯子a、墙壁b、空间c以及智能体d′。

在某些实施例中,在示例场景中包括一个独立的动态对象的情况下,所述动态对象为待预测对象,与该待预测对象对应有一个或多个参照对象,所述一个或多个参照对象称为与该待预测对象对应的一组参照对象,以图1为例,所述待预测对象为一个智能体d,所述一组参照对象包括梯子a、墙壁b以及空间c。在另一些实施例中,在示例场景中包括两个或更多个独立的动态对象的情况下,可以针对所述两个或多个动态对象分别进行预测,则与两个或多个动态对象对应有两个或更多个待预测对象,与所述两个或更多个待预测对象对应有两组或更多组参照对象,其中,每组参照对象包括当前帧图像中除去待预测对象之外的其他对象。例如,在示例场景中包括两个智能体d且每个智能体d在当前场景中的移动方式类似的情况下,两个智能体d分别表示为第一待预测对象和第二待预测对象,则与第一待预测对象对应有第一组参照对象,第一组参照对象包括梯子a、墙壁b、空间c以及第二待预测对象。与第二待预测对象对应有第二组参照对象,第二组参照对象包括梯子a、墙壁b、空间c以及第一待预测对象。

需要说明的是,上述待预测对象和参照对象仅为举例,本领域技术人员可以基于不同的应用场景确定相应的待预测对象和参照对象,在此不再一一赘述。

此外,所述待预测对象掩码矩阵是指对当前帧图像进行遮挡后得到的仅包括待预测对象的掩码矩阵,所述参照对象掩码矩阵是指对当前帧图像进行遮挡后得到的仅包括参照对象的掩码矩阵。其中,物体的掩码矩阵表示图像的每个像素属于该物体的概率,所述概率是介于0-1之间的数字,其中,0表示属于该物体的概率为0,1表示属于该物体的概率为1。为方便描述起见,待预测对象掩码矩阵和参照对象掩码矩阵统称为对象掩码矩阵。另外,基于上述一个待预测对象对应有一组参照对象的情况,相应地,所述一个待预测对象掩码矩阵对应有一组参照对象掩码矩阵。

在某些实施例中,所述待预测对象掩码矩阵是基于待预测对象确定的,所述参照对象掩码矩阵是基于参照对象与待预测对象运动的关联关系或参照对象的种类确定的。也就是说,所述待预测对象掩码矩阵是特定于对象确定的,所述参照对象掩码矩阵是特定于类确定的。

例如,关于待预测对象掩码矩阵,针对待预测对象例如智能体d生成对应的待预测对象掩码矩阵,在存在多个智能体d的情况下,生成对应每个智能体d的多个待预测对象掩码矩阵。

关于参照对象掩码矩阵,根据参照对象与对应待预测对象运动的关联关系生成与所述关联关系对应的各类参照对象掩码矩阵,其中,所述关联关系即参照对象对待预测对象的移动所产生的影响。也就是说,所述关联关系可以基于参照对象对待预测对象的影响来划分。所述影响取决于参照对象相对于待预测对象的运动状态以及参照对象的运动属性。以图1为例,图1所示的示例场景中包括能够使待预测对象攀爬的静态对象梯子a、阻止待预测对象移动的静态对象墙壁b以及能够使待预测对象掉落的静态对象空间c,虽然示例场景中示出了多个梯子a、墙壁b以及空间c,但是基于参照对象相对于待预测对象的运动关系,可以生成与梯子a一类的参照对象对应的梯子类参照对象掩码矩阵,类似的,生成与墙壁b一类的参照对象对应的墙壁类参照对象掩码矩阵,生成与空间c一类的参照对象对应的空间类参照对象掩码矩阵。另外,若图1中的示例场景中还包括作为静态对象的彩旗,所述彩旗仅表示智能体d需要到达的最终目的地但不影响智能体d的移动,则基于参照对象相对于待预测对象的运动关系,可以生成彩旗类参照对象掩码矩阵。此外,若图1中的示例场景中还包括障碍物,所述障碍物也是用来阻止待预测对象移动的静态对象,则,基于参照对象相对于待预测对象的运动关系,可以生成与墙壁b一类的参照对象和障碍物一类的参照对象对应的阻止类参照对象掩码矩阵。此外,若在图1所示的场景包括两个智能体即两个动态对象,则可以分别对两个智能体进行预测,在这种情况下,两个智能体分别称为第一待预测对象和第二待预测对象。在对第一待预测对象进行预测时,为动态对象的第二待预测对象作为第一待预测对象的参照对象。在对第二待预测对象进行预测时,为动态对象的第一待预测对象作为第二待预测对象的参照对象。鉴于此,对应有第一待预测对象掩码矩阵、第二待预测对象掩码矩阵、与第一待预测对象掩码矩阵对应的第一组参照对象掩码矩阵以及与第二待预测对象掩码矩阵对应的第二组参照对象掩码矩阵。其中第一组参照对象掩码矩阵包括梯子类参照对象掩码矩阵、墙壁类参照对象掩码矩阵(或阻止类参照对象掩码矩阵)、空间类参照对象掩码矩阵、彩旗类参照对象掩码矩阵以及第二待预测对象掩码矩阵。第二组参照对象掩码矩阵包括梯子类参照对象掩码矩阵、墙壁类参照对象掩码矩阵(或阻止类参照对象掩码矩阵)、空间类参照对象掩码矩阵、彩旗类参照对象掩码矩阵以及第一待预测对象掩码矩阵。

或者,关于参照对象掩码矩阵,还可以根据参照对象的种类确定参照对象掩码矩阵。例如,如上所述在图1中的示例场景中包括障碍物的情况下,所述障碍物也是用来阻止待预测对象移动的静态对象但与墙壁b属于不同种类,则基于参照对象的种类,可以分别生成与墙壁b一类的参照对象对应的墙壁类参照对象掩码矩阵,以及与障碍物一类的参照对象对应的障碍物类参照对象掩码矩阵。

为了简化起见,本申请以示例场景包括一个待预测对象、所述待预测对象对应有一组参照对象、且包括参照对象的参照对象掩码矩阵是基于参照对象与所述待预测对象运动的关联关系确定的为例进行描述,但本申请并不限于此。本领域技术人员应理解,基于应用场景的不同,本申请也可以应用于包括多个待预测对象和与待预测对象对应的多组参照对象的情况,在此不再一一赘述。

在一实施例中,对象检测单元12采用例如前景检测方式从序列图像中获得待预测对象、基于预先输入的应用场景中参照对象的特征以通过特征识别来获得参照对象、通过掩码矩阵对包括待预测对象和参照对象的当前帧图像进行掩码矩阵处理以获得待预测对象掩码矩阵和参照对象掩码矩阵。其中,所述待预测对象掩码矩阵和参照对象掩码矩阵分别包括该掩码矩阵在当前帧图像中的位置信息,以使得可以通过所述位置信息确定待预测对象掩码矩阵和参照对象掩码矩阵相对于当前帧图像的位置。在一示例中,所述参照对象掩码矩阵和所述待预测对象掩码矩阵是基于当前帧图像以原图大小进行掩码矩阵运算得到的。

在另一实施例中,对象检测单元12用于使用预先训练的第一卷积神经网络基于所述当前帧图像确定包括待预测对象的待预测对象掩码矩阵以及包括参照对象的参照对象掩码矩阵。在一示例中,第一卷积神经网络可以包括多个结构相同但权重不同的卷积神经网络。可以将当前帧图像输入预先训练的各卷积神经网络,各卷积神经网络的输出层经由通道彼此互连形成全连接特征图,后接逐像素(pixel-wise)softmax层以获得特定于对象的待预测对象掩码矩阵和特定于类的参照对象掩码矩阵,其中,所述卷积神经网络的个数可以基于对象掩码矩阵的个数来确定。以图1为例,根据图1所示的示例场景,对象掩码矩阵包括一个待预测对象掩码矩阵和三个参照对象掩码矩阵,因而,可通过四个卷积神经网络获得对应的四个对象掩码矩阵,所述四个卷积神经网络可以具有相同结构但具有不同权重。若图1所示的示例场景包括两个动态对象即智能体d,则相对地,通过五个卷积神经网络获得对应的五个对象掩码矩阵,所述五个卷积神经网络可以具有相同结构但具有不同权重。

例如,请参阅图3,图3显示为本申请动态预测方法采用的卷积神经网络在一种实施方式中的结构示意图,如图所示,所述卷积神经网络的结构可以为多层卷积加全卷积结构,其中,i(t)表示当前帧图像,实线箭头表示卷积加激活函数,虚线箭头表示放大加全连接,长短间隔虚线箭头表示复制加全连接,本示例中,激活函数选用relu。其中,可以设置conv(f,k,s)表示具有f个滤波器、卷积核为k且步长为s的卷积层,假设r()表示激活函数层即relu层,bn()表示批归一化层,则图3中所示的五个卷积层可以分别表示为r(bn(conv(64,5,2)))、r(bn(conv(64,3,2)))、r(bn(conv(64,3,1)))、r(bn(conv(32,1,1)))、r(bn(conv(1,3,1)))。

需要说明的是,上述卷积神经网络的结构和参数仅为举例,本领域技术人员可以基于不同应用场景中所包括的待预测对象和参照对象对卷积神经网络的结构和参数进行变型和修改,在此不再一一赘述。

预测单元13用于基于待预测对象掩码矩阵和参照对象掩码矩阵之间的关系以及预设行为预测待预测对象的运动。

其中,所述预设行为是基于应用场景预先设置的。所述预设行为可以例如采用编码的形式输出面向机器的对待预测对象的运动进行控制的一个或多个行为,如“行为1”、“行为2”等。另外,所述行为在具体的应用场景中可以指代对应的具体行为。以图1为例,在图1所示的示例场景中,预设行为可以包括行为1至行为5,其中,应用于该场景中,行为1至行为5分别表示向上、向下、向左、向右以及无操作。所述预设行为可通过编码例如one-hot编码的方式设置。

本申请中,预测单元13以预设行为以及待预测对象掩码矩阵和参照对象掩码矩阵之间的关系来预测待预测对象的运动。在一些实施例中,预测单元13还可以基于待预测对象掩码矩阵和参照对象掩码矩阵之间的关系以及预设行为预测包括待预测对象和参照对象在内的所有对象的运动,但该预测方式相较于仅预测待预测对象的运动而言计算量大,效率低下。

以图1为例,在图1所示的应用场景中,待预测对象掩码矩阵为包括智能体d的第一待预测对象掩码矩阵,参照对象掩码矩阵分别为包括梯子a的第一类参照对象掩码矩阵、包括墙壁b的第二类参照对象掩码矩阵以及包括空间c的第三类参照对象掩码矩阵,其中,所述第一类参照对象掩码矩阵、第二类参照对象掩码矩阵以及第三类参照对象掩码矩阵统称为对应于第一待预测对象掩码矩阵的第一组参照对象掩码矩阵。待预测对象掩码矩阵与参照对象掩码矩阵之间的关系包括第一类参照对象掩码矩阵基于预设行为对待预测对象掩码矩阵的作用、第二类参照对象掩码矩阵基于预设行为对待预测对象掩码矩阵的作用以及第三类参照对象矩阵基于预设行为对待预测对象掩码矩阵的作用。

此外,所预测的待预测对象的运动可以包括但不限于待预测对象运动的方向、移动距离、待预测对象运动后的位置信息等。

请参阅图8,图8显示为本申请动态预测系统中的预测单元在一种实施方式中的结构示意图,如图所示,预测单元13可以包括裁剪模块131、作用确定模块132以及预测模块133。

裁剪模块131用于以待预测对象掩码矩阵中待预测对象的位置为中心依据预设视野窗尺寸对参照对象掩码矩阵进行裁剪以获得经裁剪的参照对象掩码矩阵。

其中,待预测对象的位置是基于待预测对象掩码矩阵的期望位置限定的。例如,对于第j个待预测对象dj,其位置可通过下述公式(1)表示:

其中,h和w分别表示图像的高度和宽度,mdj表示第j个待预测对象的待预测对象掩码矩阵。

另外,视野窗尺寸是指能够表示对象间关系的最大有效范围。其中,对象间关系是指待预测对象和参照对象之间的关系。视野窗尺寸可以是技术人员基于经验预先设置的。假设视野窗尺寸为w,则以为中心、尺寸为w的视野窗bw通过下述公式(2)表示:

也就是说,基于上述公式(1)和公式(2),以待预测对象为中心,根据bw对参照对象掩码矩阵进行裁剪。在一示例中,可以通过双线性采样方式来实现裁剪处理。另外,在预设视野窗尺寸等于原始输入图像尺寸的情况下,可视为不裁剪。由于在实际应用中,局部性原理通常存在于对象间关系,因而本申请通过裁剪处理引入局部性原理,进而将对待预测对象动态的影响集中在待预测对象和与其相邻的其他对象之间的关系上。

在一实施例中,作用确定模块132用于基于预先训练的第二卷积神经网络确定经裁剪的参照对象掩码矩阵所表示的参照对象对待预测对象的作用。在另一实施例中,作用确定模块132还可以用于对所获得的经裁剪的参照对象掩码矩阵添加位置信息并基于预先训练的第二卷积神经网络确定经裁剪的参照对象掩码矩阵所表示的参照对象对待预测对象的作用。

也就是说,可以将经由裁剪模块131获得的经裁剪的参照对象掩码矩阵输入预先训练的第二卷积神经网络,其中,第二卷积神经网络可以包括具有相同结构但不同权重的多个卷积神经网络。或者,可以先对所获得的经裁剪的参照对象掩码矩阵添加位置信息,然后将在经由裁剪模块131获得的经裁剪的参照对象掩码矩阵和xy坐标图输入预先训练的第二卷积神经网络。其中,对所获得的经裁剪的参照对象掩码矩阵添加位置信息以使得后续处理对位置信息更敏感。例如,将经裁剪的参照对象掩码矩阵与恒定的xy坐标图相连以将空间信息添加到网络中,进而增加位置的变化,减少对称性。

所述第二卷积神经网络用于确定参照对象对待预测对象的运动的作用。假设在应用场景中,no表示对象掩码矩阵的总数量,nd表示待预测对象的个数,则针对(no-1)×nd对对象,总第二卷积神经网络共包括(no-1)×nd个卷积神经网络。以图1为例,在图1所示的场景中,对象掩码矩阵包括一个待预测对象掩码矩阵和三个参照对象掩码矩阵,其中,待预测对象掩码矩阵为包括智能体d的待预测对象掩码矩阵,参照对象掩码矩阵分别为包括梯子a的第一类参照对象掩码矩阵、包括墙壁b的第二类参照对象掩码矩阵以及包括空间c的第三类参照对象掩码矩阵,因而,可通过三个卷积神经网络获得对应的三类参照对象对一个待预测对象的作用。此外,类似地,若在应用场景中包括两个动态对象,也就是说,若在应用场景中包括两个智能体d,则可以分别对两个动态对象进行预测,所述动态对象分别由第一待预测对象和第二待预测对象表示,则相应地,所述应用场景中共有五个对象掩码矩阵,分别为第一预测对象掩码矩阵、第二预测对象掩码矩阵、第一类参照对象掩码矩阵、第二类参照对象掩码矩阵以及第三类参照对象掩码矩阵。相应地,与第一预测对象掩码矩阵对应的第一组参照对象掩码矩阵包括:第二预测对象掩码矩阵、第一类参照对象掩码矩阵、第二类参照对象掩码矩阵以及第三类参照对象掩码矩阵。则针对第一预测对象,需要有对应的四个卷积神经网络,上述四个卷积神经网络构成与第一预测对象对应的第一组卷积神经网络。另外,与第二预测对象掩码矩阵对应的第二组参照对象掩码矩阵包括:第一预测对象掩码矩阵、第一类参照对象掩码矩阵、第二类参照对象掩码矩阵以及第三类参照对象掩码矩阵。则针对第二预测对象,需要有对应的四个卷积神经网络,上述四个卷积神经网络构成与第二预测对象对应的第二组卷积神经网络。综上,第二卷积神经网络包括分别对应于待预测对象的两组共八个卷积神经网络。

为了便于描述,以示例场景包括一个待预测对象,对应一组卷积神经网络为例进行描述,但本申请不限于此,本领域技术人员应该理解,在包括两个或更多个待预测对象,相应地包括两组或更多组卷积神经网络的情况下,可以并行处理以分别获得每组参照对象对相应待预测对象的作用。

在以图1为例的示例中,对象掩码矩阵包括一个待预测对象掩码矩阵和三个参照对象掩码矩阵,则第二卷积神经网络包括三个卷积神经网络,所述三个卷积神经网络可以具有相同结构但具有不同权重。在一具体实现中,所述卷积神经网络的结构类似于图3所示结构。卷积神经网络的连接顺序为r(bn(conv(16,3,2)))、r(bn(conv(32,3,2)))、r(bn(conv(64,3,2)))、r(bn(conv(128,3,2))),最后一个卷积层依次由128维隐藏层和2维输出层重构且全连接。

需要说明的是,上述卷积神经网络的结构和参数仅为举例,本领域技术人员可以基于不同应用场景中所包括的待预测对象、参照对象以及参照对象基于预设行为对待预测对象的作用来对卷积神经网络的结构和参数进行变型和修改,在此不再一一赘述。

在此,所述作用是基于卷积神经网络学习到的参照对象对待预测对象基于行为的移动所产生的效果。例如,在待预测对象当前位于梯子处且输入的行为为向上的情况下,所述效果即表示待预测对象沿梯子向上移动一设置距离,所述作用例如能够表示所述效果的向量。再如,在待预测对象当前位于上述的彩旗左方且输入的行为为向右的情况下,由于彩旗对待预测对象的运动无影响,则对应的彩旗类参照对象掩码对待预测对象掩码的作用可以表示为0。

另外,所述作用还可以包括预设的待预测对象自身的作用。例如,基于应用场景预先设置的待预测对象在任何情况下都向右移动一定距离,因而,在考虑到参照对象对待预测对象的作用的情况下,还需考虑待预测对象自身的作用以最终确定待预测对象基于行为的移动。所述作用例如由向量表示。

预测模块133用于基于预设行为和所确定的作用预测待预测对象的运动。

在一实施例中,预测模块用于将经裁剪的各参照对象掩码矩阵基于各卷积神经网络获得的各参照对象掩码矩阵所表示的参照对象对待预测对象的作用与待预测对象自身作用相加并与基于例如one-hot编码的预设行为相乘以得到对待预测对象的动态预测。

在另一实施例中,预测模块用于将经裁剪的各参照对象掩码矩阵基于各卷积神经网络获得的各参照对象掩码矩阵所表示的参照对象对待预测对象的作用与待预测对象自身作用分别与基于例如one-hot编码的预设行为相乘然后再相加以得到对待预测对象的动态预测。

请参阅图9,图9显示为本申请动态预测系统中的预测单元在另一种实施方式中的结构示意图,结合图1,如图9所示,在一具体实现中,预测单元中的裁剪模块接收到经由对象检测单元确定的包括待预测对象掩码矩阵和参照对象掩码矩阵的对象掩码矩阵之后,裁剪模块确定待预测对象掩码矩阵中待预测对象的位置并以所述位置为中心依据预设视野窗对参照对象掩码矩阵进行裁剪获得经裁剪的参照对象掩码矩阵,然后,作用确定模块通过xy坐标图对所获得的经裁剪的参照对象掩码矩阵添加位置信息并基于预先训练的第二卷积神经网络确定经裁剪的各参照对象掩码矩阵所表示的各参照对象对待预测对象的作用。接着,预测模块对上述的参照对象对待预测对象的作用以及预设的待预测对象的自身作用求和并与预设的行为进行点积以预测待预测对象的运动。

综上所述,本申请的动态预测系统通过采用对象检测单元将由获取单元所获取的当前帧图像分割成待预测对象和参照对象,并采用预测单元基于由对象掩码矩阵表示的参照对象掩码矩阵与待预测对象掩码矩阵之间的关系以及预设行为来预测待预测对象的运动,使得能够提高动态预测的泛化能力,并且采用掩码矩阵表示对象,使得所述预测过程可解释。

在实际应用中,在某些情况下,不仅需要预测待预测对象的运动,还需要预测下一帧图像。鉴于此,请参阅图10,图10显示为本申请动态预测系统在另一种实施方式中的结构示意图,如图所示,动态预测系统包括获取单元91、对象检测单元92、预测单元93以及提取单元94。

获取单元91用于获取当前帧图像。获取单元91与前述举例中的获取单元11相同或相似,在此不再相似。

提取单元94用于从当前帧图像中提取时不变背景。

其中,所述时不变背景是指图像中不随时间推移而变化的对象所形成的图像。在某些实施例中,提取单元94可以通过例如前景检测方式获得图像背景。在另一些实施例中,提取单元94可以用于基于预先训练的第三卷积神经网络从当前帧图像中提取时不变背景。例如,所述第三卷积神经网络的结构包括但不限于:全卷积、卷积反卷积、残差网络(resnet)、unet等。

在一示例中,所述第三卷积神经网络设置为卷积反卷积结构。请参阅图6,图6显示为本申请动态预测方法采用的第三卷积神经网络在另一种实施方式中的结构示意图,如图所示,所述第三卷积神经网络为编码器解码器结构。其中,i(t)表示当前帧图像,ibg(t)表示当前背景图像,实线箭头表示卷积加激活函数,虚线箭头表示重构,单点划线箭头表示全连接,双点划线箭头表示反卷积加激活函数,本示例中,激活函数选用relu。其中,对于所有的卷积和反卷积,设置卷积核、步长以及通道数分别为3、2以及64,编码器与解码器之间隐藏层的维度为128。另外,针对大量环境的训练,卷积的通道数可以设置为128以提高背景分离的效果。此外,还可以将最后一个反卷积层的激活函数relu替换为tanh函数以输出-1至1范围的值。

对象检测单元92用于基于当前帧图像确定包括待预测对象的待预测对象掩码矩阵以及包括参照对象的参照对象掩码矩阵。对象检测单元92与前述举例中的对象检测单元12相同或相似,在此不再相似。

预测单元93一方面用于基于待预测对象掩码矩阵和参照对象掩码矩阵之间的关系以及预设行为预测待预测对象的运动,另一方面还用于结合所提取的时不变背景和所预测的待预测对象的运动获得下一帧图像。其中,预测单元93用于基于待预测对象掩码矩阵和参照对象掩码矩阵之间的关系以及预设行为预测待预测对象的运动与前述预测单元13用于基于待预测对象掩码矩阵和参照对象掩码矩阵之间的关系以及预设行为预测待预测对象的运动相同或相似,在此不再相似。

另外,关于预测单元93用于结合所提取的时不变背景和所预测的待预测对象的运动获得下一帧图像的实施方式,其中,所述下一帧图像即上述的与当前帧图像i(t)对应的第t+1时刻的图像i(t+1)。在一实施例中,预测单元93基于当前帧图像、背景图像、对象掩码矩阵以及所预测的待预测对象的运动,采用空间变换网络(stn)进行空间变换处理以获得下一帧图像。具体地,一方面,预测单元93基于待预测对象掩码矩阵和所预测的待预测对象的运动,采用第一空间变换网络进行空间变换处理并执行求反运算以与所提取的时不变背景图像进行相乘运算进而获得第t+1时刻的背景图像,其中,所述相乘运算是指进行数组元素相乘算法。另一方面,预测单元93基于待预测对象掩码矩阵、当前帧图像以及所预测的待预测对象的运动,采用第二空间变换网络进行空间变换处理以获得第t+1时刻的对象图像。对上述第t+1时刻的背景图像和第t+1时刻的对象图像进行相加运算以获得第t+1时刻的图像即下一帧图像,其中所述相加运算是指进行数组元素相加算法。同理,在应用场景包括两个待预测对象的情况下,预测单元针对两个待预测对象分别进行动态预测并将结果同时显示在下一帧图像上。

在预测单元93获得下一帧图像的情况下,可以将下一帧图像即所预测的图像作为新一帧图像提供给获取单元91,如此循环操作以预测待预测对象移动的整个过程。

请参阅图11,图11显示为本申请动态预测系统在又一种实施方式中的结构示意图,如图所示,在一具体实现中,所述动态预测系统可以是一个端对端的深度神经网络,所述深度神经网络中包括多个卷积神经网络,所述深度神经网络以当前帧图像和行为为输入,通过经训练的神经网络后输出所预测的下一帧图像。结合图1,如图11所示,深度神经网络以当前帧图像i(t)和行为作为输入,一方面,提取单元基于第三卷积神经网络从当前帧图像i(t)中提取背景图像ibg(t)。另一方面,对象检测单元使用第一卷积神经网络基于当前帧图像i(t)确定对象掩码矩阵,所述对象掩码矩阵包括上部所示的参照对象掩码矩阵和下部所示的待预测对象掩码矩阵。接着,预测单元使用第二卷积神经网络基于对象掩码矩阵间的关系以及行为预测待预测对象的运动。然后,一方面,如图中双点划线所示,基于待预测对象掩码矩阵和所预测的待预测对象的运动,采用stn进行空间变换处理并执行求反运算以与所提取的时不变背景图像进行相乘运算进而获得第t+1时刻的背景图像,其中,所述相乘运算是指进行数组元素相乘算法。另一方面,如图中虚线所示,基于待预测对象掩码矩阵和当前帧图像进行相乘运算然后在此基础上结合所预测的待预测对象的运动,采用stn进行空间变换处理以获得第t+1时刻的对象图像。最后,对上述第t+1时刻的背景图像和第t+1时刻的对象图像进行相加运算以获得第t+1时刻的图像即下一帧图像i(t+1),其中,所述相乘运算是指进行数组元素相乘算法,所述相加运算是指进行数组元素相加算法。此外,深度神经网络还可以将下一帧图像i(t+1)作为新一帧图像以预测第t+2时刻的图像i(t+2),如此循环操作获得待预测对象移动的整个过程。本申请的动态预测系统采用一个整体的端对端神经网络,使得在对神经网络的训练和使用中作为整体进行操作,减少人工干预,实现良好的预测性能。

本申请还提供一种设备,请参阅图12,图12显示为本申请设备在一种实施方式中的结构示意图,如图所示,所述设备包括存储装置21和处理装置22。

存储装置21用于存储至少一个程序。所述程序包括稍后描述的由处理装置22调用以执行获取、确定、提取、预测等步骤的相应程序。所述存储装置包括但不限于高速随机存取存储器、非易失性存储器。例如一个或多个磁盘存储设备、闪存设备或其他非易失性固态存储设备。在某些实施例中,存储装置还可以包括远离一个或多个处理器的存储器,例如,经由rf电路或外部端口以及通信网络(未示出)访问的网络附加存储器,其中所述通信网络可以是因特网、一个或多个内部网、局域网(lan)、广域网(wlan)、存储局域网(san)等,或其适当组合。存储器控制器可控制机器人的诸如cpu和外设接口之类的其他组件对存储装置的访问。

处理装置22与存储装置21相连。所述处理装置可包括一个或多个处理器。处理装置可操作地与存储装置中的易失性存储器和/或非易失性存储器耦接。处理装置可执行在存储器和/或非易失性存储设备中存储的指令以在设备中执行操作,诸如对所获取的当前帧进行分析并预测待预测对象的运动等。如此,处理器可包括一个或多个通用微处理器、一个或多个专用处理器(asic)、一个或多个数字信号处理器(dsp)、一个或多个现场可编程逻辑阵列(fpga)、或它们的任何组合。在一种示例中,所述处理装置通过数据线连接存储装置。所述处理装置通过数据读写技术与存储装置进行交互。其中,所述数据读写技术包括但不限于:高速/低速数据接口协议、数据库读写操作等。

处理装置22用于调用所述至少一个程序以执行前述的任一所述的动态预测方法。所述动态预测方法包括:首先,基于原始数据获取第t时刻图像i(t)。然后,基于预先训练的卷积神经网络,以当前帧图像i(t)和预设行为作为输入来执行下述操作:1)从图像i(t)中提取时不变背景;2)基于当前帧图像i(t)确定包括待预测对象的待预测对象掩码矩阵以及包括参照对象的参照对象掩码矩阵。其中待预测对象掩码矩阵是基于待预测对象确定的,参照对象掩码矩阵是基于参照对象与待预测对象运动的关联关系确定的;3)基于待预测对象掩码矩阵和参照对象掩码矩阵之间的关系以及预设行为预测待预测对象的运动。在一示例中,首先以待预测对象掩码矩阵中待预测对象的位置为中心依据预设视野窗尺寸对参照对象掩码矩阵进行裁剪以获得经裁剪的参照对象掩码矩阵,然后,对所获得的经裁剪的参照对象掩码矩阵添加位置信息并确定经裁剪的参照对象掩码矩阵所表示的参照对象对待预测对象的作用,接着,基于预设行为和所确定的作用预测待预测对象的运动;4)结合所提取的时不变背景和所预测的待预测对象的运动获得第t+1时刻图像i(t+1)。也就是说,经预先训练的卷积神经网络处理后输出第t+1时刻图像i(t+1)。此外,基于图像i(t+1)重复上述操作以获得第t+2时刻图像i(t+2),以此循环以预测待预测对象移动的整个过程。

请参阅图13,图13显示为本申请设备在另一种实施方式中的结构示意图,如图所示,所述设备还包括显示装置23。显示装置23与处理装置22相连。在一示例中,所述处理装置通过数据线连接显示装置。所述处理装置通过接口协议与显示装置进行交互。其中,所述接口协议包括但不限于:hdmi接口协议、串行接口协议等。

在某些实施例中,显示装置用于显示待预测对象掩码矩阵、参照对象掩码矩阵、经预测的所述待预测对象的运动数据中至少之一。其中,以图1所示场景为例,所述待预测对象掩码矩阵为表示智能体d的待预测对象掩码矩阵。所述参照对象掩码矩阵为表示梯子a的梯子类参照对象掩码矩阵、表示墙壁b的墙壁类参照对象掩码矩阵、表示空间c的空间类参照对象掩码矩阵。所述经预测的待预测对象的运动数据包括但不限于:待预测对象运动轨迹、待预测对象运动方向及数值如向上运动三个像素点等、下一帧图像。

在某些实施例中,还可以通过显示对象掩码图像而非对象掩码矩阵来便更加直观地观测动态预测过程。鉴于此,处理装置还用于基于当前帧图像、待预测对象掩码矩阵以及参照对象掩码矩阵生成待预测对象掩码图像和参照对象掩码图像;显示装置还用于显示待预测对象掩码图像和/或参照对象掩码图像。以图1所示场景为例,所述待预测对象掩码图像为处理装置基于当前帧图像和待预测对象掩码矩阵生成的包括智能体d的待预测对象掩码图像。所述参照对象掩码图像为处理装置基于当前帧图像和参照对象掩码矩阵生成的包括梯子a的梯子类参照对象掩码图像、包括墙壁b的墙壁类参照对象掩码图像、包括空间c的空间类参照对象掩码图像。显示装置可以根据用于需求显示预测对象掩码图像、参照对象掩码图像、部分参照图像掩码图像或其组合。

此外,所述处理装置还用于基于待预测对象掩码图像和参照对象掩码图像生成对象掩码图像;所述显示装置还用于显示所述对象掩码图像。在一实施例中,所述处理装置根据用户需求对待预测对象掩码图像及所对应的参照对象掩码图像进行叠加处理以生成对象掩码图像并经显示装置输出。以图1所示场景为例,所述处理装置对包括智能体d的待预测对象掩码图像、包括梯子a的梯子类参照对象掩码图像、包括墙壁b的墙壁类参照对象掩码图像进行叠加处理以获得对象掩码图像,用户可以基于显示装置所显示的待预测对象相对于梯子和墙壁的位置来直观地观测待预测对象。因而,通过显示装置显示对象掩码矩阵、对象掩码图像使得用户可以通过查看图像和相应数值获悉待预测对象和参照对象的相对位置关系、待预测对象的运动,能够在视觉上和语义上解释动态模型。

另外需要说明的是,通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请的部分或全部可借助软件并结合必需的通用硬件平台来实现。基于这样的理解,本申请还提供一种计算机可读存储介质,所述存储介质存储有至少一种程序,所述程序在被执行时实现前述的任一所述的动态预测方法。

基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可包括其上存储有机器可执行指令的一个或多个机器可读介质,这些指令在由诸如计算机、计算机网络或其他电子设备等一个或多个机器执行时可使得该一个或多个机器根据本申请的实施例来执行操作。例如执行机器人的定位方法中的各步骤等。机器可读介质可包括,但不限于,软盘、光盘、cd-rom(紧致盘-只读存储器)、磁光盘、rom(只读存储器)、ram(随机存取存储器)、eprom(可擦除可编程只读存储器)、eeprom(电可擦除可编程只读存储器)、磁卡或光卡、闪存、或适于存储机器可执行指令的其他类型的介质/机器可读介质。其中,所述存储介质可位于机器人也可位于第三方服务器中,如位于提供某应用商城的服务器中。在此对具体应用商城不做限制,如小米应用商城、华为应用商城、苹果应用商城等。

本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络pc、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等。

本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

上述实施例仅例示性说明本申请的原理及其功效,而非用于限制本申请。任何熟悉此技术的人士皆可在不违背本申请的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本申请所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本申请的权利要求所涵盖。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1