一种物体跟踪方法以及相关设备与流程

文档序号:36417397发布日期:2023-12-19 22:45阅读:53来源:国知局
一种物体跟踪方法以及相关设备与流程

本技术涉及物体跟踪,具体涉及一种物体跟踪方法以及相关设备。


背景技术:

1、三维(three-dimensional,3d)物体跟踪是计算机视觉领域的一个重要研究方向,在诸如增强现实(augmented reality,ar)、人机交互、视觉伺服等领域具有广泛的应用前景。

2、而目前,传统的三维物体跟踪算法的架构通常较为复杂,计算复杂度较高,导致在ar眼镜、手机、平板电脑等计算资源较弱的终端设备上进行三维物体跟踪时运行速度较慢,跟踪效果较差。


技术实现思路

1、本技术提供一种物体跟踪方法,以解决目前在ar眼镜、手机、平板电脑等计算资源较弱的终端设备上进行三维物体跟踪时运行速度较慢,跟踪效果较差的问题。本技术还提供了相应的装置、设备、计算机可读存储介质和计算机程序产品等。

2、本技术第一方面提供一种物体跟踪方法,该方法应用于计算设备集群,该方法包括:接收终端设备发送的图像序列,图像序列中包括第一图像;基于第一图像,生成目标物体的第一位姿信息,第一位姿信息用于描述目标物体在第一图像中对应的位姿;向终端设备发送目标物体的第一位姿信息,以使得终端设备根据第一位姿信息,在图像序列中对目标物体进行三维物体跟踪。

3、在第一方面中,计算设备集群可以根据终端设备发送的图像序列中的第一图像,获得目标物体在第一图像中的第一位姿信息,从而使得终端设备根据计算设备集群发送的第一位姿信息,在图像序列中对目标物体进行三维跟踪。这样,可以通过计算设备集群来实现获得目标物体在第一图像对应的位姿的相关运算,从而减小三维物体跟踪时终端设备的运算压力,提高终端设备的运算速度,满足三维物体跟踪时的实时性要求。

4、在第一方面的一种可能的实现方式中,该方法还包括:接收终端设备发送的第一数据,第一数据指示目标物体处于跟丢状态,跟丢状态指示终端设备在图像序列中无法识别到目标物体;在接收终端设备发送的第一数据之后,若在图像序列的第三图像中识别到目标物体,则向终端设备发送第二数据,以使得终端设备根据第二数据对目标物体进行三维物体跟踪,第二数据包括第二位姿信息,并且,第二数据指示目标物体处于与跟丢状态对应的目标状态,第二位姿信息用于描述目标物体在第三图像对应的位姿。

5、该种可能的实现方式中,计算设备集群可以根据该第一数据,在二维物体跟踪中确定该目标物体是否确实跟丢,若跟丢,则对终端设备中目标物体进行重定位,从而重新获取该目标物体的初始位姿,并下发至终端设备,以继续对该目标物体进行三维物体跟踪。

6、其中,该第二数据指示目标物体处于与跟丢状态对应的目标状态,这样,终端设备在接收到第二数据之后,基于该目标状态,可以确定该第二数据为基于第一数据对目标物体进行重定位之后所获得的信息,因此,可以根据第二数据中目标物体的第二位姿信息,对目标物体进行三维物体跟踪。

7、在第一方面的一种可能的实现方式中,上述步骤:基于第一图像,生成目标物体的第一位姿信息,包括:根据图像序列中的至少一帧,在第一图像中进行二维物体跟踪,以获得第一图像中的目标物体对应的第三数据,第三数据包含目标物体的第一物体标识;若根据第三数据确定目标物体的跟踪状态为第一状态,则生成目标物体对应的第一位姿信息,第一状态指目标物体为新增的待跟踪物体,或者,指示目标物体为终端设备在图像序列中无法识别到的物体。

8、该种可能的实现方式中,对于第一图像中识别到的目标物体,可以在确定该目标物体为新增的待跟踪物体时,再通过该三维物体定位模块对该新增的待跟踪物体进行三维物体定位,获得该新增的待跟踪物体的第一位姿信息,以作为该新增的待跟踪物体的初始位姿,这样,终端设备可以基于该初始位姿,开始对该新增的待跟踪物体进行三维物体跟踪。或者,对于第一图像中识别到的目标物体,可以在结合终端设备上传的相关指示信息,确定该目标物体为终端设备中无法识别到的物体时,再通过该三维物体定位模块对该无法识别到的物体进行三维物体定位,获得该物体的第一位姿信息,以作为该无法识别到的物体的重定位位姿,这样,终端设备可以基于该重定位位姿,继续对该无法识别到的物体进行三维物体跟踪。

9、在第一方面的一种可能的实现方式中,上述步骤:若根据第三数据确定目标物体的跟踪状态为第一状态,则生成目标物体对应的第一位姿信息,包括:比对第一物体标识与每个第二物体标识,每个第二物体标识为图像序列中,第一图像的前m帧的每一帧中,基于二维物体跟踪而确定的一个物体的物体标识,m为正整数;若比对结果指示第一物体标识是相对于前m帧的新增的物体标识,则生成新增的物体标识对应的目标物体的第一位姿信息,新增的物体标识对应的目标物体为新增的待跟踪物体。

10、该种可能的实现方式中,通过比对第一物体标识与每个第二物体标识,可以确定第一图像中是否存在新增的待跟踪物体,若存在,则获得该新增的待跟踪物体的第一位姿信息并下发给终端设备,从而使得终端设备获得该新增的待跟踪物体的第一位姿信息以作为该新增的该跟踪物体的初始位姿并进行三维物体跟踪。

11、在第一方面的一种可能的实现方式中,上述步骤:若根据第三数据确定目标物体的跟踪状态为第一状态,则获得目标物体对应的第一位姿信息,包括:比对第一物体标识与每个第二物体标识,每个第二物体标识为图像序列中,第一图像的前m帧的每一帧中,基于二维物体跟踪而确定的一个物体的物体标识,m为正整数;若比对结果指示第一物体标识是相对于前m帧的非新增的物体标识,则:若非新增的物体标识对应的第三数据的第一字段中包含第一描述信息,则生成非新增的物体标识对应的目标物体的第一位姿信息,第一字段中包含的第一描述信息指示目标物体为终端设备在图像序列中无法识别到的物体。

12、该种可能的实现方式中,可以根据第三数据确定目标物体为终端设备在图像序列中无法识别到的物体,从而获得目标物体对应的第一位姿信息以作为该目标物体的重定位位姿并向终端设备发送,以使得终端设备根据该目标物体的第一位姿信息,继续进行三维物体跟踪。

13、本技术第二方面提供物体跟踪方法,该方法应用于终端设备,该方法包括:实时采集图像序列;向计算设备集群发送图像序列,图像序列中包括第一图像;接收计算设备集群发送的目标物体的第一位姿信息,第一位姿信息用于描述目标物体在第一图像中对应的位姿;根据第一位姿信息,在图像序列中对目标物体进行三维物体跟踪。

14、在第二方面中,计算设备集群可以根据终端设备发送的图像序列中的第一图像,获得目标物体在第一图像中的第一位姿信息,从而使得终端设备根据计算设备集群发送的第一位姿信息,在图像序列中对目标物体进行三维跟踪。这样,可以通过计算设备集群来实现获得目标物体在第一图像对应的位姿的相关运算,从而减小三维物体跟踪时终端设备的运算压力,提高终端设备的运算速度,满足三维物体跟踪时的实时性要求。

15、在第二方面的一种可能的实现方式中,第一位姿信息用于描述目标物体在第一图像对应的相机坐标系下的位姿。

16、在第二方面的一种可能的实现方式中,该方法还包括:在图像序列中对目标物体进行三维物体跟踪时,若在图像序列中的第二图像中无法识别到目标物体,则向计算设备集群发送目标物体对应的第一数据,第一数据指示目标物体处于跟丢状态;在无法识别到目标物体之后,若从计算设备集群接收到第二数据,且第二数据指示目标物体处于与跟丢状态对应的目标状态,则根据第二数据中目标物体的第二位姿信息,对目标物体进行三维物体跟踪。

17、该种可能的实现方式中,该第二数据指示目标物体处于与跟丢状态对应的目标状态,这样,终端设备在接收到第二数据之后,基于该目标状态,可以确定该第二数据为基于第一数据对目标物体进行重定位之后所获得的信息,因此,可以根据第二数据中目标物体的第二位姿信息,对目标物体进行三维物体跟踪。

18、在第二方面的一种可能的实现方式中,第一数据包括目标物体的物体标识,第一数据中通过第一字段包含的第一描述信息描述跟丢状态,第二数据包括目标物体的物体标识,并且第二数据中通过第二字段包含的第二描述信息描述目标状态。

19、在第二方面的一种可能的实现方式中,上述步骤:根据第一位姿信息,在图像序列中对目标物体进行三维物体跟踪,包括:在图像序列中的当前帧对目标物体进行三维物体跟踪时,根据目标物体在当前帧与当前帧之前的n帧之间的第一相对位姿变化,获得目标物体在当前帧中的三维跟踪结果,n为正整数。

20、在第二方面的一种可能的实现方式中,上述步骤:在图像序列中的当前帧对目标物体进行三维物体跟踪时,根据目标物体在当前帧与当前帧之前的n帧之间的第一相对位姿变化,获得目标物体在当前帧中的三维跟踪结果,包括:在图像序列中的当前帧对目标物体进行三维物体跟踪时,若第一相对位姿变化不满足第一预设条件,则根据与当前帧相匹配的关键帧中目标物体的第三位姿信息,和/或,当前帧中目标物体的轮廓信息,获得目标物体在当前帧中的三维跟踪结果,第三位姿信息用于描述目标物体在关键帧对应的位姿。

21、该种可能的实现方式中,第一相对位姿变化不满足第一预设条件指示目标物体在当前帧与当前帧之前的n帧之间的相对位姿变化较大。示例性地,该第一预设条件可以指第一相对位姿变化对应的平移矩阵所指示的平移量大于预设的平移量阈值,和/或,第一相对位姿变化对应的旋转矩阵所指示的旋转角度大于预设的旋转角度阈值等等。

22、该种可能的实现方式中,第一相对位姿变化不满足第一预设条件指示目标物体在当前帧与当前帧之前的n帧之间的相对位姿变化较大,此时,基于该第一相对位姿变化计算出的目标物体在当前帧所对应的位姿可能会存在较大误差。因此,可以进一步结合与当前帧相匹配的关键帧中目标物体的第三位姿信息,和/或,当前帧中目标物体的轮廓信息,来获得目标物体在当前帧中的三维跟踪结果,以降低跟踪误差,提升跟踪精度。

23、在第二方面的一种可能的实现方式中,上述步骤:在图像序列中的当前帧对目标物体进行三维物体跟踪时,若第一相对位姿变化不满足第一预设条件,则根据当前帧对应的关键帧中目标物体的第三位姿信息,和/或,当前帧中目标物体的轮廓信息,获得目标物体在当前帧中的三维跟踪结果,包括:在当前帧对目标物体进行三维物体跟踪时,若第一相对位姿变化不满足第一预设条件,则:若获得与当前帧相匹配的关键帧,则根据目标物体在当前帧与当前帧对应的关键帧之间的第二相对位姿变化,以及第三位姿信息,获得目标物体在当前帧中的三维跟踪结果。

24、该种可能的实现方式中,在实际应用过程中,还可以预先获得每个关键帧中待跟踪物体的位姿信息。通常来说,关键帧的质量通常较高,特征点数量较多,每个关键帧中待跟踪物体的位姿信息通常较为准确,从而可以为三维物体跟踪时的相关位姿优化过程提供较为准确的数据基础,使得终端设备可以基于关键帧对应的位姿信息,在各个图像帧获得较为准确的位姿优化结果。因此,若获得与当前帧相匹配的关键帧,则根据目标物体在当前帧与当前帧对应的关键帧之间的第二相对位姿变化,以及第三位姿信息,获得目标物体在当前帧中的三维跟踪结果。

25、在第二方面的一种可能的实现方式中,上述步骤:在图像序列中的当前帧对目标物体进行三维物体跟踪时,若第一相对位姿变化不满足第一预设条件,则根据当前帧对应的关键帧中目标物体的第三位姿信息,和/或,当前帧中目标物体的轮廓信息,获得目标物体在当前帧中的三维跟踪结果,包括:在当前帧对目标物体进行三维物体跟踪时,若第一相对位姿变化不满足第一预设条件,且不存在与当前帧相匹配的关键帧,则根据当前帧中目标物体的轮廓信息,获得目标物体在当前帧中的三维跟踪结果。

26、该种可能的实现方式中,在图像序列中的当前帧对目标物体进行三维物体跟踪时,若第一相对位姿变化不满足第一预设条件,且不存在与当前帧相匹配的关键帧,则可以结合目标物体的轮廓信息进行三维物体跟踪,从而可以在目标物体出现部分遮挡、表面纹理信息较少甚至无纹理等情况下依然可以进行跟踪,提升了三维物体跟踪的鲁棒性。

27、在第二方面的一种可能的实现方式中,上述步骤:根据第一位姿信息,在图像序列中对目标物体进行三维物体跟踪,包括:在图像序列中的当前帧对目标物体进行三维物体跟踪时,若目标物体为静止物体,则:根据目标物体的第一位姿信息、第一图像对应的相机位姿信息和当前帧对应的相机位姿信息,获得目标物体在当前帧对应的初始估计位姿信息,其中,相机位姿信息用于描述相应相机在世界坐标系下的位姿,初始估计位姿信息用于描述目标物体在当前帧中对应的初始估计位姿;根据初始估计位姿信息,获得目标物体在当前帧中的三维跟踪结果。

28、该种可能的实现方式中,若目标物体为静止物体,则该目标物体在世界坐标系下的位姿为固定值。此时,基于目标物体的第一位姿信息以及第一图像对应的相机位姿信息,可以获得该目标物体在世界坐标系下的位姿,从而在后续的三维跟踪过程中,基于该目标物体在世界坐标系下的位姿以及当前帧对应的相机位姿信息,获得目标物体在当前帧对应的初始估计位姿信息,从而为目标物体在当前帧中的三维物体跟踪过程提供一个偏差较小的初值,加速位姿优化过程。

29、在第二方面的一种可能的实现方式中,上述步骤:接收计算设备集群发送的目标物体的第一位姿信息,包括:接收计算设备集群发送的目标物体的第一位姿信息和目标物体的类型信息;该方法还包括:基于目标物体的类型信息,确定目标物体是否为静止物体。

30、该种可能的实现方式中,终端设备接收到目标物体的类型信息之后,可以基于目标物体的类型信息确定目标物体是否为静止物体,从而以较为合适的方式计算目标物体的初始估计位姿以进行位姿优化。

31、本技术第三方面提供一种物体跟踪方法,其特征在于,方法包括:终端设备实时采集图像序列;终端设备向计算设备集群发送图像序列,图像序列中包括第一图像;计算设备集群基于第一图像,生成目标物体的第一位姿信息,第一位姿信息用于描述目标物体在第一图像中对应的位姿;计算设备集群向终端设备发送目标物体的第一位姿信息;终端设备根据第一位姿信息,在图像序列中对目标物体进行三维物体跟踪。

32、在第三方面的一种可能的实现方式中,该方法还包括:终端设备在图像序列中对目标物体进行三维物体跟踪时,若终端设备在图像序列中的第二图像中无法识别到目标物体,则向计算设备集群发送目标物体对应的第一数据,第一数据指示目标物体处于跟丢状态;计算设备集群接收第一数据之后,若计算设备集群在图像序列的第三图像中识别到目标物体,则向终端设备发送第二数据,第二数据包括第二位姿信息,并且,第二数据指示目标物体处于与跟丢状态对应的目标状态,第二位姿信息用于描述目标物体在第三图像对应的位姿;终端设备在无法识别到目标物体之后,若从计算设备集群接收到第二数据,则根据第二数据中目标物体的第二位姿信息,对目标物体进行三维物体跟踪。

33、在第三方面的一种可能的实现方式中,终端设备根据第一位姿信息,在图像序列中对目标物体进行三维物体跟踪,包括:终端设备在图像序列中的当前帧对目标物体进行三维物体跟踪时,若目标物体在当前帧与当前帧之前的n帧之间的第一相对位姿变化不满足第一预设条件,则根据与当前帧相匹配的关键帧中目标物体的第三位姿信息,和/或,当前帧中目标物体的轮廓信息,获得目标物体在当前帧中的三维跟踪结果,第三位姿信息用于描述目标物体在关键帧对应的位姿,n为正整数。

34、在第三方面的一种可能的实现方式中,终端设备在图像序列中的当前帧对目标物体进行三维物体跟踪时,若目标物体在当前帧与当前帧之前的n帧之间的第一相对位姿变化不满足第一预设条件,则根据当前帧对应的关键帧中目标物体的第三位姿信息,和/或,当前帧中目标物体的轮廓信息,获得目标物体在当前帧中的三维跟踪结果,包括:终端设备在当前帧对目标物体进行三维物体跟踪时,若第一相对位姿变化不满足第一预设条件,则:若获得与当前帧相匹配的关键帧,则根据目标物体在当前帧与当前帧对应的关键帧之间的第二相对位姿变化,以及第三位姿信息,获得目标物体在当前帧中的三维跟踪结果。

35、在第三方面的一种可能的实现方式中,终端设备在图像序列中的当前帧对目标物体进行三维物体跟踪时,若目标物体在当前帧与当前帧之前的n帧之间的第一相对位姿变化不满足第一预设条件,则根据当前帧对应的关键帧中目标物体的第三位姿信息,和/或,当前帧中目标物体的轮廓信息,获得目标物体在当前帧中的三维跟踪结果,包括:终端设备在当前帧对目标物体进行三维物体跟踪时,若第一相对位姿变化不满足第一预设条件,且不存在与当前帧相匹配的关键帧,则根据当前帧中目标物体的轮廓信息,获得目标物体在当前帧中的三维跟踪结果。

36、在第三方面的一种可能的实现方式中,计算设备集群基于第一图像,生成目标物体的第一位姿信息,包括:计算设备集群根据图像序列中的至少一帧,在第一图像中进行二维物体跟踪,以获得第一图像中的目标物体对应的第三数据,第三数据包含目标物体的第一物体标识;若根据第三数据确定目标物体的跟踪状态为第一状态,则计算设备集群生成目标物体对应的第一位姿信息,第一状态指目标物体为新增的待跟踪物体,或者,指示目标物体为终端设备在图像序列中无法识别到的物体。

37、在第三方面的一种可能的实现方式中,若根据第三数据确定目标物体的跟踪状态为第一状态,则计算设备集群生成目标物体对应的第一位姿信息,包括:计算设备集群比对第一物体标识与每个第二物体标识,每个第二物体标识为图像序列中,第一图像的前m帧的每一帧中,基于二维物体跟踪而确定的一个物体的物体标识,m为正整数;若比对结果指示第一物体标识是相对于前m帧的新增的物体标识,则计算设备集群生成新增的物体标识对应的目标物体的第一位姿信息,新增的物体标识对应的目标物体为新增的待跟踪物体。

38、在第三方面的一种可能的实现方式中,若根据第三数据确定目标物体的跟踪状态为第一状态,则计算设备集群生成目标物体对应的第一位姿信息,包括:计算设备集群比对第一物体标识与每个第二物体标识,每个第二物体标识为图像序列中,第一图像的前m帧的每一帧中,基于二维物体跟踪而确定的一个物体的物体标识,m为正整数;若比对结果指示第一物体标识是相对于前m帧的非新增的物体标识,则:若非新增的物体标识对应的第三数据的第一字段中包含第一描述信息,则计算设备集群生成非新增的物体标识对应的目标物体的第一位姿信息,第一字段中包含的第一描述信息指示目标物体为终端设备在图像序列中无法识别到的物体。

39、本技术第四方面提供一种物体跟踪装置,该装置可以应用于计算设备集群,该装置具有实现上述第一方面或第一方面任意一种可能实现方式的方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块,例如:接收模块、发送模块以及处理模块。

40、本技术第五方面提供一种计算设备集群,该计算设备集群包括至少一个处理器、存储器以及存储在存储器中并可在处理器上运行的计算机执行指令,当计算机执行指令被处理器执行时,处理器执行如上述第一方面或第一方面任意一种可能的实现方式的方法。

41、本技术第六方面提供一种存储一个或多个计算机执行指令的计算机可读存储介质,当计算机执行指令被处理器执行时,处理器执行如上述第一方面或第一方面任意一种可能的实现方式的方法。

42、本技术第七方面提供一种存储一个或多个计算机执行指令的计算机程序产品,当计算机执行指令被处理器执行时,处理器执行如上述第一方面或第一方面任意一种可能的实现方式的方法。

43、本技术第八方面提供了一种芯片系统,该芯片系统包括处理器,用于支持服务器实现上述第一方面或第一方面任意一种可能的实现方式中所涉及的功能。在一种可能的设计中,芯片系统还可以包括存储器,存储器用于保存计算机设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。

44、本技术第九方面提供一种物体跟踪装置,应用于终端设备,该装置具有实现上述第二方面或第二方面任意一种可能实现方式的方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块,例如:采集模块、发送模块、接收模块以及跟踪模块。

45、本技术第十方面提供一种终端设备,该终端包括至少一个处理器、存储器以及存储在存储器中并可在处理器上运行的计算机执行指令,当计算机执行指令被处理器执行时,处理器执行如上述第二方面或第二方面任意一种可能的实现方式的方法。

46、本技术第十一方面提供一种存储一个或多个计算机执行指令的计算机可读存储介质,当计算机执行指令被处理器执行时,处理器执行如上述第二方面或第二方面任意一种可能的实现方式的方法。

47、本技术第十二方面提供一种存储一个或多个计算机执行指令的计算机程序产品,当计算机执行指令被处理器执行时,处理器执行如上述第二方面或第二方面任意一种可能的实现方式的方法。

48、本技术第十三方面提供了一种芯片系统,该芯片系统包括处理器,用于支持终端实现上述第二方面或第二方面任意一种可能的实现方式中所涉及的功能。在一种可能的设计中,芯片系统还可以包括存储器,存储器用于保存计算机设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。

49、本技术第十四方面提供了一种物体跟踪系统,该物体跟踪系统包括终端设备和计算设备集群,计算设备集群能够执行如上述第一方面或第一方面任意一种可能的实现方式的方法,终端设备能够执行如上述第二方面或第二方面任意一种可能的实现方式的方法。

50、其中,第四方面至第八方面或者其中任一种可能实现方式所带来的技术效果可参见第一方面或第一方面的相关可能实现方式所带来的技术效果,第九方面至第十三方面或者其中任一种可能实现方式所带来的技术效果可参见第二方面或第二方面的相关可能实现方式所带来的技术效果,第三方面和第十四方面或者其中任一种可能实现方式所带来的技术效果可参见第一方面、第二方面、第一方面的相关可能实现方式或第二方面的相关可能实现方式所带来的技术效果,此处不再赘述。

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