CN108830900A - 关键点的抖动处理方法和装置 - Google Patents
关键点的抖动处理方法和装置 Download PDFInfo
- Publication number
- CN108830900A CN108830900A CN201810620519.8A CN201810620519A CN108830900A CN 108830900 A CN108830900 A CN 108830900A CN 201810620519 A CN201810620519 A CN 201810620519A CN 108830900 A CN108830900 A CN 108830900A
- Authority
- CN
- China
- Prior art keywords
- key point
- frame image
- key
- target location
- location coordinate
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
Abstract
本发明涉及一种关键点的抖动处理方法和装置。该方法包括:检测视频流内当前帧图像的多个第一关键点,得到所述多个第一关键点的检测位置坐标;获取所述视频流中上一帧图像对应的第一形状拓扑结构信息,以及获取所述当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息;根据所述多个第一关键点的检测位置坐标、所述第一形状拓扑结构信息以及所述标识信息,确定所述多个第一关键点的目标位置坐标,并将所述多个第一关键点移动至所述目标位置坐标。该方法可以解决视频流中关键点的抖动问题,同时能够提高视频流中关键点的定位精度,且在视频流中待检测物体移动时,减小了关键点的视觉延迟感。
Description
技术领域
本发明涉及计算机视觉领域,特别是涉及一种关键点的抖动处理方法和装置。
背景技术
随着科技的不断发展,物体关键点检测技术的应用越来越广泛,例如,现阶段比较流行的基于人脸关键点检测技术的表情贴纸。目前,在同一视频流中,基于该技术,终端设备在视频流的前后帧内检测出的关键点的位置会有差别,这样,在视频流中便会出现检测出的所有关键点随机抖动的现象,从而导致基于物体关键点检测技术的应用产品无法正常使用。因此,如何解决视频流中关键点的抖动是本领域技术人员亟待解决的问题。
在传统技术中,针对视频流的当前帧内的每一个关键点,终端设备首先检测当前帧内关键点的检测位置,然后根据上一帧内关键点的位置和检测的当前帧内关键点的检测位置,重新确定当前帧内关键点的位置,以减小当前帧内关键点的位置与上一帧内关键点的位置之间的距离,从而减缓视频流中关键点的抖动。
但是,采用上述传统技术,会导致关键点的位置精度较低,且会出现当物体移动时,关键点延迟移动的问题。
发明内容
基于此,有必要针对传统技术中关键点的位置精度较低,且当物体移动时,关键点延迟移动的问题,提供一种关键点的抖动处理方法和装置。
第一方面,本发明提供一种关键点的抖动处理方法,包括:
检测视频流内当前帧图像的多个第一关键点,得到所述多个第一关键点的检测位置坐标;
获取所述视频流中上一帧图像对应的第一形状拓扑结构信息,以及获取所述当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息;
根据所述多个第一关键点的检测位置坐标、所述第一形状拓扑结构信息以及所述标识信息,确定所述多个第一关键点的目标位置坐标,并将所述多个第一关键点移动至所述目标位置坐标。
本实施例提供的关键点的抖动处理方法,终端设备通过检测得到视频流内当前帧图像的多个第一关键点的检测位置坐标,并获取视频流中上一帧图像对应的第一形状拓扑结构信息,以及获取当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息,然后结合多个第一关键点的检测位置坐标、第一形状拓扑结构信息以及多个第一关键点中能够连接成边的关键点的标识信息,确定多个第一关键点的目标位置坐标,并将多个第一关键点移动至目标位置坐标。由于终端设备在确定当前帧图像的多个第一关键点的目标位置坐标时,是通过将上一帧图像对应的第一形状拓扑结构信息、当前帧图像对应的第一拓扑要求信息以及多个第一关键点的检测位置坐标作为约束条件,所约束出的当前帧图像对应的拓扑结构信息和上一帧图像对应的拓扑结构信息之间的差距较小,从而使得确定出的当前帧图像的多个第一关键点的目标位置坐标与上一帧图像的多个第二关键点的位置坐标差距较小,进而解决了视频流中关键点的抖动问题。同时,由于终端设备在确定当前帧图像的多个第一关键点的目标位置坐标时,还结合了多个第一关键点的检测位置坐标,使得确定出的多个第一关键点的目标位置坐标与多个第一关键点的检测位置坐标差距较小,从而提高了视频流中关键点的定位精度,且在视频流中待检测物体移动时,减小了关键点的视觉延迟感。
在其中一个实施例中,所述第一形状拓扑结构信息包括所述上一帧图像中多个第二关键点的坐标以及所述多个第二关键点构成的边。
在其中一个实施例中,所述根据所述多个第一关键点的检测位置坐标、所述第一形状拓扑结构信息以及所述标识信息,确定所述多个第一关键点的目标位置坐标,包括:
根据所述标识信息,确定所述多个第一关键点构成的边;
当抖动误差满足预设阈值时,根据所述多个第一关键点构成的边的长度与目标位置坐标矩阵之间的关联关系、所述多个第二关键点构成的边中第i条边的长度、所述多个第一关键点的检测位置坐标矩阵、调整系数以及所述多个第二关键点构成的边的总数量,确定所述多个第一关键点的目标位置坐标矩阵;其中,所述目标位置坐标矩阵包括所述多个第一关键点的目标位置坐标;所述检测位置坐标矩阵包括所述多个第一关键点的检测位置坐标。
在其中一个实施例中,所述当抖动误差满足预设阈值时,根据所述多个第一关键点构成的边的长度与目标位置坐标矩阵之间的关联关系、所述多个第二关键点构成的边中第i条边的长度、所述多个第一关键点的检测位置坐标矩阵、调整系数以及所述多个第二关键点构成的边的总数量,确定所述多个第一关键点的目标位置坐标矩阵,包括:
当抖动误差满足预设阈值时,根据用于指示所述标识信息的矩阵、所述多个第二关键点的坐标矩阵、调整系数以及所述多个第一关键点的检测位置坐标矩阵,确定所述多个第一关键点的目标位置坐标矩阵,其中,所述多个第二关键点的坐标矩阵包括所述多个第二关键点的坐标。
本实施例提供的关键点的抖动处理方法,在终端设备得到当前帧图像的多个第一关键点的检测位置坐标、上一帧图像对应的第一形状拓扑结构信息以及当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息之后,终端设备根据标识信息,确定多个第一关键点构成的边,并当抖动误差满足预设阈值时,根据多个第一关键点构成的边的长度与目标位置坐标矩阵之间的关联关系、多个第二关键点构成的边中第i条边的长度、多个第一关键点的检测位置坐标矩阵、调整系数以及所述多个第二关键点构成的边的总数量,确定多个第一关键点的目标位置坐标矩阵。也就是说,终端设备在确定当前帧图像的多个第一关键点的目标位置坐标矩阵时,是通过将上一帧图像对应的第一形状拓扑结构信息、当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息以及多个第一关键点的检测位置坐标作为约束条件,所约束出的当前帧图像对应的拓扑结构信息和上一帧图像对应的拓扑结构信息之间的差距较小,从而使得确定出的当前帧图像的多个第一关键点的目标位置坐标与上一帧图像的多个第二关键点的位置坐标差距较小,进而解决了视频流中关键点的抖动问题。同时,由于终端设备在确定当前帧图像的多个第一关键点的目标位置坐标矩阵时,还结合了多个第一关键点的检测位置坐标矩阵,使得确定出的多个第一关键点的目标位置坐标矩阵与多个第一关键点的检测位置坐标矩阵差距较小,从而提高了视频流中关键点的定位精度,且在视频流中待检测物体移动时,减小了关键点的视觉延迟感。另外,终端设备还可以根据用于指示多个第一关键点中能够连接成边的关键点的标识信息的矩阵、多个第二关键点的坐标矩阵、调整系数以及多个第一关键点的检测位置坐标矩阵,确定多个第一关键点的目标位置坐标矩阵,由于终端设备在确定多个第一关键点的目标位置坐标矩阵的过程中,参考的变量数量较少,因此,大大简化了计算过程,降低了计算量。
在其中一个实施例中,所述方法还包括:
根据所述标识信息,以及所述多个第一关键点的目标位置坐标,构建所述当前帧图像对应的形状拓扑,得到所述当前帧图像对应的第二形状拓扑结构信息;
其中,所述第二形状拓扑结构信息包括:所述多个第一关键点的目标位置坐标,以及根据所述多个第一关键点的目标位置坐标构成的边。
在其中一个实施例中,所述上一帧图像中多个第二关键点的坐标包括:所述多个第二关键点的检测位置坐标,或者,所述多个第二关键点的目标位置坐标。
在其中一个实施例中,所述获取所述当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息,包括:
根据所述待检测对象与第二映射关系,确定所述待检测对象对应的多个第一关键点中能够连接成边的关键点的标识信息;
其中,所述第二映射关系包括不同的待检测对象与多个第一关键点中能够连接成边的关键点的标识信息之间的对应关系。
第二方面,本发明提供一种关键点的抖动处理装置,包括:
检测模块,用于检测视频流内当前帧图像的多个第一关键点,得到所述多个第一关键点的检测位置坐标;
获取模块,用于获取所述视频流中上一帧图像对应的第一形状拓扑结构信息,以及获取所述当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息;确定模块,用于根据所述多个第一关键点的检测位置坐标、所述第一形状拓扑结构信息以及所述标识信息,确定所述多个第一关键点的目标位置坐标;
移动模块,用于将所述多个第一关键点移动至所述目标位置坐标。
在其中一个实施例中,所述第一形状拓扑结构信息包括所述上一帧图像中多个第二关键点的坐标以及所述多个第二关键点构成的边。
在其中一个实施例中,上述确定模块,包括:
第一确定单元,用于根据所述标识信息,确定所述多个第一关键点构成的边;
第二确定单元,用于当抖动误差满足预设阈值时,根据所述多个第一关键点构成的边的长度与目标位置坐标矩阵之间的关联关系、所述多个第二关键点构成的边中第i条边的长度、所述多个第一关键点的检测位置坐标矩阵、调整系数以及所述多个第二关键点构成的边的总数量,确定所述多个第一关键点的目标位置坐标矩阵;其中,所述目标位置坐标矩阵包括所述多个第一关键点的目标位置坐标;所述检测位置坐标矩阵包括所述多个第一关键点的检测位置坐标。
在其中一个实施例中,所述第二确定单元,具体用于当抖动误差满足预设阈值时,根据用于指示所述标识信息的矩阵、所述多个第二关键点的坐标矩阵、调整系数以及所述多个第一关键点的检测位置坐标矩阵,确定所述多个第一关键点的目标位置坐标矩阵,其中,所述多个第二关键点的坐标矩阵包括所述多个第二关键点的坐标。
在其中一个实施例中,上述关键点的抖动处理装置还可以包括:
构建模块,用于根据所述标识信息,以及所述多个第一关键点的目标位置坐标,构建所述当前帧图像对应的形状拓扑,得到所述当前帧图像对应的第二形状拓扑结构信息;
其中,所述第二形状拓扑结构信息包括:所述多个第一关键点的目标位置坐标,以及根据所述多个第一关键点的目标位置坐标构成的边。
在其中一个实施例中,所述上一帧图像中多个第二关键点的坐标包括:所述多个第二关键点的检测位置坐标,或者,所述多个第二关键点的目标位置坐标。
在其中一个实施例中,上述检测模块,包括:
第三确定单元,用于根据用户输入的检测需求以及预设的第一映射关系,确定所述当前帧图像中的待检测对象;其中,所述第一映射关系包括不同的检测需求与待检测对象之间的对应关系;
检测单元,用于检测所述待检测对象,得到所述待检测对象对应的所述多个第一关键点的检测位置坐标。
在其中一个实施例中,上述获取模块,具体用于根据所述待检测对象与第二映射关系,确定所述待检测对象对应的多个第一关键点中能够连接成边的关键点的标识信息;
其中,所述第二映射关系包括不同的待检测对象与多个第一关键点中能够连接成边的关键点的标识信息之间的对应关系。
第三方面,本发明提供一种终端设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
检测视频流内当前帧图像的多个第一关键点,得到所述多个第一关键点的检测位置坐标;
获取所述视频流中上一帧图像对应的第一形状拓扑结构信息,以及获取所述当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息;根据所述多个第一关键点的检测位置坐标、所述第一形状拓扑结构信息以及所述标识信息,确定所述多个第一关键点的目标位置坐标,并将所述多个第一关键点移动至所述目标位置坐标。
第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
检测视频流内当前帧图像的多个第一关键点,得到所述多个第一关键点的检测位置坐标;
获取所述视频流中上一帧图像对应的第一形状拓扑结构信息,以及获取所述当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息;
根据所述多个第一关键点的检测位置坐标、所述第一形状拓扑结构信息以及所述标识信息,确定所述多个第一关键点的目标位置坐标,并将所述多个第一关键点移动至所述目标位置坐标。
本实施例提供的关键点的抖动处理装置、终端设备和存储介质,能够使得终端设备通过检测得到视频流内当前帧图像的多个第一关键点的检测位置坐标,并获取视频流中上一帧图像对应的第一形状拓扑结构信息,以及获取当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息,然后结合多个第一关键点的检测位置坐标、第一形状拓扑结构信息以及多个第一关键点中能够连接成边的关键点的标识信息,确定多个第一关键点的目标位置坐标,并将多个第一关键点移动至目标位置坐标。由于终端设备在确定当前帧图像的多个第一关键点的目标位置坐标时,是通过将上一帧图像对应的第一形状拓扑结构信息、当前帧图像对应的第一拓扑要求信息以及多个第一关键点的检测位置坐标作为约束条件,所约束出的当前帧图像对应的拓扑结构信息和上一帧图像对应的拓扑结构信息之间的差距较小,从而使得确定出的当前帧图像的多个第一关键点的目标位置坐标与上一帧图像的多个第二关键点的位置坐标差距较小,进而解决了视频流中关键点的抖动问题。同时,由于终端设备在确定当前帧图像的多个第一关键点的目标位置坐标时,还结合了多个第一关键点的检测位置坐标,使得确定出的多个第一关键点的目标位置坐标与多个第一关键点的检测位置坐标差距较小,从而提高了视频流中关键点的定位精度,且在视频流中待检测物体移动时,减小了关键点的视觉延迟感。
附图说明
图1为一实施例提供的一种终端设备的内部结构示意图;
图2为一实施例提供的关键点的抖动处理方法流程示意图;
图3为另一实施例提供的关键点的抖动处理方法流程示意图;
图4为另一实施例提供的关键点的抖动处理方法流程示意图;
图5为另一实施例提供的关键点的抖动处理方法流程示意图;
图6为一实施例提供的关键点的抖动处理装置结构示意图;
图7为另一实施例提供的关键点的抖动处理装置结构示意图;
图8为另一实施例提供的关键点的抖动处理装置结构示意图;
图9为另一实施例提供的关键点的抖动处理装置结构示意图。
具体实施方式
本发明实施例提供的关键点的抖动处理方法,可以适用于如图1所示的终端设备。该终端设备包括通过系统总线连接的处理器、存储器,该存储器中存储有计算机程序,处理器执行该计算机程序时可以执行下述方法实施例的步骤。可选的,该终端设备还可以包括网络接口、显示屏和输入装置。其中,该终端设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器(图1中未示出),该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该终端设备的网络接口用于与外部的终端通过网络连接通信。可选的,终端设备可以为个人计算机PC(personal computer)、移动终端、便携式设备等具有图像数据处理功能、且可以与外部设备或者用户交互的电子设备,本实施例对终端设备的具体形式并不做限定。
为了解决视频流中关键点的抖动,传统技术中通常是通过约束视频流中当前帧图像中的关键点的位置与上一帧图像中关键点的位置之间的距离,来达到视觉上的防抖效果。但是,传统的防抖技术会导致图像中关键点的定位精度较低,且在图像中的待检测物体移动时,关键点会产生延迟移动的问题,从而导致基于关键点的应用效果较差。
本发明实施例提供的关键点的抖动处理方法、装置、终端设备和存储介质,通过约束视频流中当前帧图像中多个关键点构成的形状拓扑结构信息与上一帧图像中多个关键点构成的形状拓扑结构信息之间的差距,同时结合当前帧图像中多个关键点的检测位置坐标,来确定当前帧图像中多个关键点的目标位置坐标,并将当前帧图像中多个关键点移动至确定出的目标位置坐标。从而解决了视频流中关键点的抖动问题,同时在视频流中的待检测物体移动时,减小了关键点的视觉延迟感,且视频流中的每一帧图像的关键点的定位精度也较高。
需要说明的是,下述方法实施例的执行主体可以是关键点的抖动处理装置,该装置可以通过软件、硬件或者软硬件结合的方式实现成为上述终端设备的部分或者全部。下述方法实施例以执行主体是终端设备为例进行说明。
为了使本发明的目的、技术方案及优点更加清楚明白,通过下述实施例并结合附图,对本发明实施例中的技术方案进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
为了更加清楚的对本发明实施例进行描述,这里对下述实施例所涉及的部分名词进行说明:第一关键点为视频流内当前帧图像上检测到的关键点,第二关键点为视频流内上一帧图像上检测到的关键点。
图2为一实施例提供的关键点的抖动处理方法流程示意图。本实施例涉及的是终端设备如何根据上一帧图像对应的形状拓扑和当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息,解决视频流中关键点的抖动的具体过程。具体的,如图2所示,该方法包括:
S101、检测视频流内当前帧图像的多个第一关键点,得到所述多个第一关键点的检测位置坐标。
具体的,当前帧图像中存在多个待检测对象,每个待检测对象对应多个第一关键点,即多个第一关键点可以表征待检测对象的特征。例如,当前帧图像中存在人的图像以及其它物体的图像,对于当前帧图像中的人的图像,存在人脸、胳膊、腿等多个待检测对象,以当前帧图像中的待检测对象为人脸为例,人脸对应了多个第一关键点,如鼻子、嘴唇、眼睛、眉毛轮廓的关键点以及人脸轮廓的关键点,通过检测上述多个第一关键点便可以得到人脸的特征。具体的,终端设备通过关键点检测技术,便可以检测到当前帧图像中人脸的多个第一关键点的检测位置坐标。
S102、获取所述视频流中上一帧图像对应的第一形状拓扑结构信息,以及获取所述当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息;
具体的,对于视频流中前后两帧的帧图像中,同一个待检测对象对应的多个关键点中能够连接成边的关键点的标识信息是相同的。上述关键点的标识信息可以根据实际的需求,预先设置在终端设备内,也可以预先设置在其它与终端设备交互的外部设备中,本实施例对此不做限定。
可选的,上一帧图像对应的第一形状拓扑结构信息包括上一帧图像中多个第二关键点的坐标以及多个第二关键点构成的边。可以理解的是,第一形状拓扑结构信息可以表征上一帧图像中多个第二关键点之间的相对位置关系,例如两个第二关键点之间的相对位置关系可以通过两个第二关键点的坐标以及两个第二关键点之间的距离(即两个第二关键点构成的边的长度)来体现。其中,第二关键点为与第一关键点具有相同标识的关键点。可选的,上一帧图像中多个第二关键点的坐标可以包括多个第二关键点的检测位置坐标,也可以包括多个第二关键点的目标位置坐标。其中,检测位置坐标为通过关键点检测技术检测出的关键点的实际位置坐标,目标位置坐标为关键点移动后的位置坐标。
由于视频流中前后两帧的帧图像中,同一个待检测对象对应的多个关键点中能够连接成边的关键点的标识信息是相同的,因此,当上一帧图像中多个第二关键点的坐标为多个第二关键点的检测位置坐标时(例如上一帧图像为视频流中的第1帧图像时),上一帧图像对应的第一形状拓扑结构信息便可以由多个第二关键点的检测位置坐标和多个第二关键点中能够连接成边的关键点的标识信息构建得到。另外,当上一帧图像中多个第二关键点的坐标为多个第二关键点的目标位置坐标时(例如上一帧图像为视频流中的非第1帧图像时),上一帧图像对应的第一形状拓扑结构信息可以由多个第二关键点的目标位置坐标和多个第二关键点中能够连接成边的关键点的标识信息构建得到。对于当前帧图像来说,上一帧图像对应的第一形状拓扑结构信息是已知的,因此,终端设备便可以直接获取上一帧图像对应的第一形状拓扑结构信息。
需要说明的是,终端设备可以先执行S101,再执行S102,也可以先执行S102,再执行S101,还可以同时执行S101和S102,本实施例对S101和S102的执行顺序并不做限定。
S103、根据所述多个第一关键点的检测位置坐标、所述第一形状拓扑结构信息以及所述标识信息,确定所述多个第一关键点的目标位置坐标,并将所述多个第一关键点移动至所述目标位置坐标。
具体的,在终端设备获取到上一帧图像对应的第一形状拓扑结构信息、当前帧图像对应的第一拓扑要求信息以及当前帧图像的多个第一关键点的检测位置坐标之后,终端设备便可以根据当前帧图像的多个第一关键点的检测位置坐标、上一帧图像对应的第一形状拓扑结构信息以及当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息,确定当前帧图像的多个第一关键点的目标位置坐标。
在一种可选的实现方式中,终端设备可以根据以下过程确定当前帧图像的多个第一关键点的目标位置坐标:
基于视频流中的前后两帧图像对应的形状拓扑结构信息之间的变化差距较小的原理,终端设备可以根据上一帧图像对应的第一形状拓扑结构信息和当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息,预测出当前帧图像对应的第二形状拓扑结构信息,再根据预测出的当前帧图像对应的第二形状拓扑结构信息,并结合当前帧图像的多个第一关键点的检测位置坐标,纠正构成第二形状拓扑结构信息的多个第一关键点的位置坐标,从而得到多个第一关键点的目标位置坐标。当然,终端设备还可以根据下述实施例中描述的具体过程,确定当前帧图像的多个第一关键点的目标位置坐标。
可选的,终端设备还可以根据前两帧图像分别对应的形状拓扑结构信息、当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息以及当前帧图像的多个第一关键点的检测位置坐标,确定当前帧图像的多个第一关键点的目标位置坐标。当然,终端设备还可以根据上几帧图像分别对应的形状拓扑结构信息、当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息以及当前帧图像的多个第一关键点的检测位置坐标,确定当前帧图像的多个第一关键点的目标位置坐标,本实施例对此不做限制。
相比传统技术,本实施例提供的关键点的抖动处理方法,由于终端设备是根据上一帧图像对应的第一形状拓扑结构信息、当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息以及当前帧图像的多个第一关键点的检测位置坐标来确定当前帧图像的多个第一关键点的目标位置坐标,并不是直接根据上一帧图像的第二关键点的位置来确定当前帧图像的第一关键点的目标位置坐标。因此,其通过将上一帧图像对应的第一形状拓扑结构信息、当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息以及多个第一关键点的检测位置坐标作为约束条件,所约束出的当前帧图像对应的拓扑结构信息和上一帧图像对应的拓扑结构信息之间的差距较小,从而使得所约束出的当前帧图像的多个第一关键点的目标位置坐标与上一帧图像的多个第二关键点的位置坐标差距较小,进而解决了视频流中关键点的抖动问题。同时,终端设备通过本实施例的方案确定出的多个第一关键点的目标位置坐标与多个第一关键点的检测位置坐标差距较小,因此,其大大提高了视频流中的关键点的定位精度,且在视频流中待检测物体移动时,减小了关键点的视觉延迟感。
本实施例提供的关键点的抖动处理方法,终端设备通过检测视频流内当前帧图像的多个第一关键点的检测位置坐标,并获取视频流中上一帧图像对应的第一形状拓扑结构信息,以及当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息,然后结合多个第一关键点的检测位置坐标、第一形状拓扑结构信息以及多个第一关键点中能够连接成边的关键点的标识信息,确定多个第一关键点的目标位置坐标,并将多个第一关键点移动至目标位置坐标。由于终端设备在确定当前帧图像的多个第一关键点的目标位置坐标时,是通过将上一帧图像对应的第一形状拓扑结构信息、当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息以及多个第一关键点的检测位置坐标作为约束条件,所约束出的当前帧图像对应的拓扑结构信息和上一帧图像对应的拓扑结构信息之间的差距较小,从而使得确定出的当前帧图像的多个第一关键点的目标位置坐标与上一帧图像的多个第二关键点的位置坐标差距较小,进而解决了视频流中关键点的抖动问题。同时,由于终端设备在确定当前帧图像的多个第一关键点的目标位置坐标时,还结合了多个第一关键点的检测位置坐标,使得确定出的多个第一关键点的目标位置坐标与多个第一关键点的检测位置坐标差距较小,从而提高了视频流中关键点的定位精度,且在视频流中待检测物体移动时,减小了关键点的视觉延迟感。
图3为另一实施例提供的关键点的抖动处理方法流程示意图。本实施例涉及的是终端设备如何确定当前帧图像对应的多个第一关键点的目标位置坐标的可选的过程。在上述实施例的基础上,上述S103可以包括:
S201:根据所述标识信息,确定所述多个第一关键点构成的边。
具体的,终端设备在S102中获取了当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息,由于上述获取的标识信息表征了哪些第一关键点能够连接成边,因此,终端设备可以根据获取的标识信息,确定多个第一关键点构成的边。
S202:当抖动误差满足预设阈值时,根据所述多个第一关键点构成的边的长度与目标位置坐标矩阵之间的关联关系、所述多个第二关键点构成的边中第i条边的长度、所述多个第一关键点的检测位置坐标矩阵、调整系数以及所述多个第二关键点构成的边的总数量,确定所述多个第一关键点的目标位置坐标矩阵;其中,所述目标位置坐标矩阵包括所述多个第一关键点的目标位置坐标;所述检测位置坐标矩阵包括所述多个第一关键点的检测位置坐标。
可以理解的是,多个第一关键点构成的边的长度与多个第一关键点的目标位置坐标矩阵存在关联关系,即终端设备可以根据多个第一关键点的目标位置坐标得到相应的多个第一关键点构成的边的长度。可选的,终端设备可以根据公式
确定当所述F满足抖动误差阈值时,所述当前帧图像的目标位置坐标矩阵Xrefine,所述Xrefine包括所述多个第一关键点的目标位置坐标。
其中,所述Xalign为所述当前帧图像的检测位置坐标矩阵,所述检测位置坐标矩阵包括所述多个第一关键点的检测位置坐标,所述Dlast(i)为所述第一形状拓扑结构信息中第i条边的长度,所述Drefine(i)可通过包含所述Xrefine的关系式表示(即Drefine(i)与Xrefine之间存在关联关系),所述F为抖动误差,所述λ为调整系数,所述edges为所述第一形状拓扑结构信息中的边的总数量。
具体的,上述抖动误差阈值可以根据实际需求进行相应的设置。终端设备可以根据公式或者包含的其它关系式,通过最小二乘法确定当F满足抖动误差阈值时,当前帧图像的目标位置坐标矩阵Xrefine。
可选的,终端设备还可以根据上几帧图像分别对应的形状拓扑结构信息、当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息以及当前帧图像的多个第一关键点的检测位置坐标,确定当前帧图像的多个第一关键点的目标位置坐标。以终端设备结合当前帧图像的上两帧图像对应的形状拓扑结构信息,确定当前帧图像的多个第一关键点的目标位置坐标为例,终端设备可以根据公式:
或者包含的其它关系式,确定当F满足抖动误差阈值时,当前帧图像的目标位置坐标矩阵Xrefine。其中,Dlast1(i)为当前帧图像的上一帧图像对应的形状拓扑结构信息中第i条边的长度,Dlast2(i)为当前帧图像的上上一帧图像对应的形状拓扑结构信息中第i条边的长度。
作为一种可选的实施方式,上述S202可以包括:当抖动误差满足预设阈值时,根据用于指示所述标识信息的矩阵、所述多个第二关键点的坐标矩阵、调整系数以及所述多个第一关键点的检测位置坐标矩阵,确定所述多个第一关键点的目标位置坐标矩阵,其中,所述多个第二关键点的坐标矩阵包括所述多个第二关键点的坐标。
可选的,终端设备可以对所述进行简化处理,得到F=||AXrefine-AXlast||2+λ||Xrefine-Xalign||2;根据公式(2)F=||AXrefine-AXlast||2+λ||Xrefine-Xalign||2,确定当所述F满足抖动误差阈值时,所述当前帧图像的目标位置坐标矩阵Xrefine;其中,所述A为用于指示所述标识信息的矩阵,Xlast为所述多个第二关键点的坐标矩阵。
具体的,终端设备可以根据公式F=||AXrefine-AXlast||2+λ||Xrefine-Xalign||2或者包含||AXrefine-AXlast||2+λ||Xrefine-Xalign||2的其它关系式,确定当所述F满足抖动误差阈值时,所述当前帧图像的目标位置坐标矩阵Xrefine。其中,上述A可以存在多种不同的形式,本实施例对A的具体形式不做限定,只要能够通过A获取到当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息即可。
当抖动误差阈值已知时,即F已知,由于公式(2)中只存在一个未知变量Xrefine,这样,终端设备便可以通过公式(2)快速计算得到当前帧图像的多个第一关键点的目标位置坐标,大大简化了计算过程,降低了计算量。
S203:将所述多个第一关键点移动至所述目标位置坐标。
本实施例提供的关键点的抖动处理方法,终端设备可以根据标识信息,确定多个第一关键点构成的边,并当抖动误差满足预设阈值时,根据多个第一关键点构成的边的长度与目标位置坐标矩阵之间的关联关系、多个第二关键点构成的边中第i条边的长度、多个第一关键点的检测位置坐标矩阵、调整系数以及所述多个第二关键点构成的边的总数量,确定多个第一关键点的目标位置坐标矩阵,也就是说,终端设备在确定当前帧图像的多个第一关键点的目标位置坐标矩阵时,是通过将上一帧图像对应的第一形状拓扑结构信息、当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息以及多个第一关键点的检测位置坐标作为约束条件,所约束出的当前帧图像对应的拓扑结构信息和上一帧图像对应的拓扑结构信息之间的差距较小,从而使得确定出的当前帧图像的多个第一关键点的目标位置坐标与上一帧图像的多个第二关键点的位置坐标差距较小,进而解决了视频流中关键点的抖动问题。同时,由于终端设备在确定当前帧图像的多个第一关键点的目标位置坐标矩阵时,还结合了多个第一关键点的检测位置坐标矩阵,使得确定出的多个第一关键点的目标位置坐标矩阵与多个第一关键点的检测位置坐标矩阵差距较小,从而提高了视频流中关键点的定位精度,且在视频流中待检测物体移动时,减小了关键点的视觉延迟感。另外,终端设备还可以根据用于指示多个第一关键点中能够连接成边的关键点的标识信息的矩阵、多个第二关键点的坐标矩阵、调整系数以及多个第一关键点的检测位置坐标矩阵,确定多个第一关键点的目标位置坐标矩阵,由于终端设备在确定多个第一关键点的目标位置坐标矩阵的过程中,参考的变量数量较少,因此,大大简化了计算过程,降低了计算量。
图4为另一实施例提供的关键点的抖动处理方法流程示意图。本实施例涉及的是终端设备如何根据上一帧图像对应的形状拓扑和当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息,解决视频流中关键点的抖动的整体过程。具体的,如图4所示,该方法可以包括:
S301:检测视频流内当前帧图像的多个第一关键点,得到所述多个第一关键点的检测位置坐标。
可选的,终端设备可以根据用户输入的检测需求以及预设的第一映射关系,确定当前帧图像中的待检测对象,并检测待检测对象,以得到待检测对象对应的多个第一关键点的检测位置坐标。其中,第一映射关系包括不同的检测需求与待检测对象之间的对应关系。
具体的,检测需求可以为用户的实际应用需求。检测需求的输入方式可以为触摸输入、点击输入或者语音输入中的至少一个。以用户输入的检测需求为用户点击了一张人脸贴纸为例,由于第一映射关系包括不同的检测需求与待检测对象之间的对应关系,因此,对于此例子,第一映射关系中包括人脸贴纸与人脸之间的对应关系。可以理解的是,当用户点击了某一张人脸贴纸时,终端设备便可以根据第一映射关系确定当前帧图像中的待检测对象为人脸。在终端设备确定出当前帧图像中的待检测对象为人脸之后,终端设备便可以根据人脸关键点检测技术,检测得到人脸的多个第一关键点的检测位置坐标。其中,多个第一关键点可以包括人脸的五官的关键点和人脸轮廓的关键点。
S302:获取所述视频流中上一帧图像对应的第一形状拓扑结构信息,以及获取所述当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息。
可选的,终端设备获取第一形状拓扑结构信息的过程可以参见上述实施例S102中的描述,本实施例在此不再赘述。
可选的,终端设备获取当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息还可以是:根据待检测对象与第二映射关系,确定待检测对象对应的多个第一关键点中能够连接成边的关键点的标识信息;其中,第二映射关系包括不同的待检测对象与多个第一关键点中能够连接成边的关键点的标识信息之间的对应关系。
具体的,继续以检测需求为人脸贴纸为例,预设的第二映射关系中包括人脸与人脸对应的多个第一关键点中能够连接成边的关键点的标识信息,在终端设备确定出当前帧图像中的待检测对象为人脸之后,终端设备便可以根据第二映射关系确定人脸对应的多个第一关键点中能够连接成边的关键点的标识信息。
S303:根据公式(1)确定当所述F满足抖动误差阈值时,所述当前帧图像的目标位置坐标矩阵Xrefine,其中,所述Xrefine包括所述多个第一关键点的目标位置坐标。
对于S303的具体描述可以参见上述实施例中S201中的描述,本实施例在此不再赘述。
S304:将所述多个第一关键点移动至所述目标位置坐标。
可选的,终端设备还可以构建当前帧图像对应的第二形状拓扑结构信息,以便在到达视频流的下一帧图像时,终端设备便可以根据第二形状拓扑结构信息、下一帧图像的多个关键点中能够连接成边的关键点的标识信息以及下一帧图像的多个关键点的检测位置坐标,确定下一帧图像的多个关键点的目标位置坐标。具体的,该方法还可以包括S305:
S305:根据所述标识信息,以及所述多个第一关键点的目标位置坐标,构建所述当前帧图像对应的形状拓扑,得到所述当前帧图像对应的第二形状拓扑结构信息;其中,所述第二形状拓扑结构信息包括:所述多个第一关键点的目标位置坐标,以及根据所述多个第一关键点的目标位置坐标构成的边。
本实施例提供的关键点的抖动处理方法,在终端设备得到当前帧图像的多个第一关键点的检测位置坐标、上一帧图像对应的第一形状拓扑结构信息以及当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息之后,终端设备根据公式(1),确定当F满足抖动误差阈值时,当前帧图像的目标位置坐标矩阵,并将多个第一关键点移动至目标位置坐标。由于公式(1)中的Dlast(i)为上一帧图像对应的第一形状拓扑结构信息中第i条边的长度,Drefine(i)为当前帧图像构成的边中第i条边的长度,Drefine(i)与待确定的Xrefine之间存在关联关系,Xalign为当前帧图像的检测位置坐标矩阵,也就是说,终端设备在确定当前帧图像的多个第一关键点的目标位置坐标矩阵Xrefine时,是通过上一帧图像对应的第一形状拓扑结构信息、当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息以及多个第一关键点的检测位置坐标来约束的,使得确定出的当前帧图像的多个第一关键点的目标位置坐标与上一帧图像的多个第二关键点的位置坐标差距较小,从而解决了视频流中关键点的抖动问题。同时,由于终端设备在确定当前帧图像的多个第一关键点的目标位置坐标矩阵Xrefine时,还结合了多个第一关键点的检测位置坐标矩阵Xalign,使得确定出的多个第一关键点的目标位置坐标矩阵Xrefine与多个第一关键点的检测位置坐标矩阵Xalign差距较小,从而提高了视频流中关键点的定位精度,且在视频流中待检测物体移动时,减小了关键点的视觉延迟感。另外,终端设备还可以根据简化处理后的公式(2)确定多个第一关键点的目标位置坐标矩阵Xrefine,大大简化了计算过程,降低了计算量。
为了便于本领域技术人员的理解,以下分两种情况介绍本发明实施例提供的关键点的抖动处理方法的具体过程。以下以当前帧图像为视频流的第2帧图像为例进行介绍。具体的,如图5所示,该方法可以包括:
S401、检测视频流内第2帧图像的多个关键点,得到第2帧图像的多个关键点的检测位置坐标。
S402、获取视频流中第1帧图像对应的形状拓扑结构信息,以及获取第2帧图像的多个关键点中能够连接成边的关键点的标识信息。
S403、根据第2帧图像的多个关键点的检测位置坐标、第1帧图像对应的形状拓扑结构信息以及第2帧图像的多个关键点中能够连接成边的关键点的标识信息,确定第2帧图像的多个关键点的目标位置坐标,并将第2帧图像的多个关键点移动至目标位置坐标。
S404:根据第2帧图像的多个关键点中能够连接成边的关键点的标识信息,以及第2帧图像中多个关键点的目标位置坐标,构建第2帧图像对应的形状拓扑,得到第2帧图像对应的形状拓扑结构信息。
当随着时间的推进,视频流显示第3帧图像时,即当前帧图像为第3帧图像时,上述方法还可以包括如下步骤:
S405、检测视频流内第3帧图像的多个关键点,得到第3帧图像的多个关键点的检测位置坐标。
S406、获取视频流中第2帧图像对应的形状拓扑结构信息,以及获取第3帧图像的多个关键点中能够连接成边的关键点的标识信息。
S407、根据第3帧图像的多个关键点的检测位置坐标、第2帧图像对应的形状拓扑结构信息以及第3帧图像的多个关键点中能够连接成边的关键点的标识信息,确定第3帧图像的多个关键点的目标位置坐标,并将第3帧图像的多个关键点移动至目标位置坐标。
可选的,终端设备还可以根据第3帧图像的多个关键点的检测位置坐标、第1帧图像对应的形状拓扑结构信息、第2帧图像对应的形状拓扑结构信息以及第3帧图像的多个关键点中能够连接成边的关键点的标识信息,确定第3帧图像的多个关键点的目标位置坐标。
以此类推,终端设备可以根据上述过程确定视频流中的每一帧图像的多个关键点的目标位置坐标,由于视频流中的当前帧图像的多个第一关键点的目标位置坐标,均是考虑了上一帧图像对应的形状拓扑结构信息或者上几帧图像分别对应的形状拓扑结构信息,并结合了当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息和当前帧图像的多个第一关键点的检测位置坐标,因此,终端设备约束出的当前帧图像对应的形状拓扑结构信息与上一帧图像或者上几帧图像分别对应的形状拓扑结构信息差距较小,从而使得确定出的当前帧图像的多个第一关键点的目标位置坐标与上一帧图像或者上几帧图像中的关键点的位置坐标差距较小,从而解决了视频流中关键点的抖动问题。同时,由于终端设备还结合了当前帧图像的多个关键点的检测位置坐标,因此,终端设备确定出的当前帧图像的多个第一关键点的目标位置坐标与多个第一关键点的检测位置坐标差距较小,从而提高了视频流中关键点的定位精度,且在视频流中待检测物体移动时,减小了关键点的视觉延迟感。
应该理解的是,虽然图2-5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-5中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
图6为一实施例提供的关键点的抖动处理装置的结构示意图。如图6所示,该关键点的抖动处理装置可以包括检测模块11、获取模块12、确定模块13和移动模块14。
具体的,检测模块11,用于检测视频流内当前帧图像的多个第一关键点,得到所述多个第一关键点的检测位置坐标。
获取模块12,用于获取所述视频流中上一帧图像对应的第一形状拓扑结构信息,以及获取所述当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息。
确定模块13,用于根据所述多个第一关键点的检测位置坐标、所述第一形状拓扑结构信息以及所述标识信息,确定所述多个第一关键点的目标位置坐标。
移动模块14,用于将所述多个第一关键点移动至所述目标位置坐标。
可选的,所述第一形状拓扑结构信息包括所述上一帧图像中多个第二关键点的坐标以及所述多个第二关键点构成的边。
本实施例提供的关键点的抖动处理装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
图7为另一实施例提供的关键点的抖动处理装置的结构示意图。在上述如图6所示实施例的基础上,可选的,如图7所示,上述确定模块13可以包括:第一确定单元131和第二确定单元132。
第一确定单元131,用于根据所述标识信息,确定所述多个第一关键点构成的边。
第二确定单元132,用于当抖动误差满足预设阈值时,根据所述多个第一关键点构成的边的长度与目标位置坐标矩阵之间的关联关系、所述多个第二关键点构成的边中第i条边的长度、所述多个第一关键点的检测位置坐标矩阵、调整系数以及所述多个第二关键点构成的边的总数量,确定所述多个第一关键点的目标位置坐标矩阵;其中,所述目标位置坐标矩阵包括所述多个第一关键点的目标位置坐标;所述检测位置坐标矩阵包括所述多个第一关键点的检测位置坐标。
可选的,第二确定单元132用于根据公式确定当所述F满足抖动误差阈值时,所述当前帧图像的目标位置坐标矩阵Xrefine,所述Xrefine包括所述多个第一关键点的目标位置坐标。其中,所述Xalign为所述当前帧图像的检测位置坐标矩阵,所述检测位置坐标矩阵包括所述多个第一关键点的检测位置坐标,所述Dlast(i)为所述第一形状拓扑结构信息中第i条边的长度,所述Drefine(i)可通过包含所述Xrefine的关系式表示(即Drefine(i)与Xrefine之间存在关联关系),所述F为抖动误差,所述λ为调整系数,所述edges为所述第一形状拓扑结构信息中的边的总数量。
可选的,上述第二确定单元132,具体用于当抖动误差满足预设阈值时,根据用于指示所述标识信息的矩阵、所述多个第二关键点的坐标矩阵、调整系数以及所述多个第一关键点的检测位置坐标矩阵,确定所述多个第一关键点的目标位置坐标矩阵,其中,所述多个第二关键点的坐标矩阵包括所述多个第二关键点的坐标。
可选的,第二确定单元132,具体用于对所述进行简化处理,得到F=||AXrefine-AXlast||2+λ||Xrefine-Xalign||2;根据公式F=||AXrefine-AXlast||2+λ||Xrefine-Xalign||2,确定当所述F满足抖动误差阈值时,所述当前帧图像的目标位置坐标矩阵Xrefine。其中,所述A用于指示所述第一拓扑要求信息,Xlast为上一帧图像的多个第二关键点的坐标矩阵。
可选的,所述上一帧图像中多个第二关键点的坐标包括:所述多个第二关键点的检测位置坐标,或者,所述多个第二关键点的目标位置坐标。
本实施例提供的关键点的抖动处理装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
图8为另一实施例提供的关键点的抖动处理装置的结构示意图。在上述如图6或图7所示实施例的基础上,可选的,如图8所示,上述关键点的抖动处理装置还可以包括:构建模块15。
具体的,构建模块15,用于根据所述标识信息,以及所述多个第一关键点的目标位置坐标,构建所述当前帧图像对应的形状拓扑,得到所述当前帧图像对应的第二形状拓扑结构信息。其中,所述第二形状拓扑结构信息包括:所述多个第一关键点的目标位置坐标,以及根据所述多个第一关键点的目标位置坐标构成的边。
本实施例提供的关键点的抖动处理装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
图9为另一实施例提供的关键点的抖动处理装置的结构示意图。在上述实施例的基础上,可选的,如图9所示,上述检测模块11可以包括第三确定单元111和检测单元112。
具体的,第三确定单元111,用于根据用户输入的检测需求以及预设的第一映射关系,确定所述当前帧图像中的待检测对象。其中,所述第一映射关系包括不同的检测需求与待检测对象之间的对应关系。
检测单元112,用于检测所述待检测对象,得到所述待检测对象对应的所述多个第一关键点的检测位置坐标。
可选的,上述获取模块12,具体用于根据所述待检测对象与第二映射关系,确定所述待检测对象对应的多个第一关键点中能够连接成边的关键点的标识信息。其中,所述第二映射关系包括不同的待检测对象与多个第一关键点中能够连接成边的关键点的标识信息之间的对应关系。
本实施例提供的关键点的抖动处理装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
关于关键点的抖动处理装置的具体限定可以参见上文中对于关键点的抖动处理方法的限定,在此不再赘述。上述关键点的抖动处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于终端设备中的处理器中,也可以以软件形式存储于终端设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种终端设备,该终端设备的内部结构图可以如图1所示。该终端设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该终端设备的处理器用于提供计算和控制能力。该终端设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该终端设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种关键点的抖动处理方法。该终端设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该终端设备的输入装置可以是显示屏上覆盖的触摸层,也可以是终端设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端设备的限定,具体的终端设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种终端设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
检测视频流内当前帧图像的多个第一关键点,得到所述多个第一关键点的检测位置坐标;
获取所述视频流中上一帧图像对应的第一形状拓扑结构信息,以及获取所述当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息;
根据所述多个第一关键点的检测位置坐标、所述第一形状拓扑结构信息以及所述标识信息,确定所述多个第一关键点的目标位置坐标,并将所述多个第一关键点移动至所述目标位置坐标。
在一个实施例中,所述第一形状拓扑结构信息包括所述上一帧图像中多个第二关键点的坐标以及所述多个第二关键点构成的边。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据所述标识信息,确定所述多个第一关键点构成的边;当抖动误差满足预设阈值时,根据所述多个第一关键点构成的边的长度与目标位置坐标矩阵之间的关联关系、所述多个第二关键点构成的边中第i条边的长度、所述多个第一关键点的检测位置坐标矩阵、调整系数以及所述多个第二关键点构成的边的总数量,确定所述多个第一关键点的目标位置坐标矩阵;其中,所述目标位置坐标矩阵包括所述多个第一关键点的目标位置坐标;所述检测位置坐标矩阵包括所述多个第一关键点的检测位置坐标。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
当抖动误差满足预设阈值时,根据用于指示所述标识信息的矩阵、所述多个第二关键点的坐标矩阵、调整系数以及所述多个第一关键点的检测位置坐标矩阵,确定所述多个第一关键点的目标位置坐标矩阵,其中,所述多个第二关键点的坐标矩阵包括所述多个第二关键点的坐标。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据所述标识信息,以及所述多个第一关键点的目标位置坐标,构建所述当前帧图像对应的形状拓扑,得到所述当前帧图像对应的第二形状拓扑结构信息;其中,所述第二形状拓扑结构信息包括:所述多个第一关键点的目标位置坐标,以及根据所述多个第一关键点的目标位置坐标构成的边。
在一个实施例中,所述上一帧图像中多个第二关键点的坐标包括:所述多个第二关键点的检测位置坐标,或者,所述多个第二关键点的目标位置坐标。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据用户输入的检测需求以及预设的第一映射关系,确定所述当前帧图像中的待检测对象;检测所述待检测对象,得到所述待检测对象对应的所述多个第一关键点的检测位置坐标。其中,所述第一映射关系包括不同的检测需求与待检测对象之间的对应关系。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据所述待检测对象与第二映射关系,确定所述待检测对象对应的多个第一关键点中能够连接成边的关键点的标识信息;其中,所述第二映射关系包括不同的待检测对象与多个第一关键点中能够连接成边的关键点的标识信息之间的对应关系。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
检测视频流内当前帧图像的多个第一关键点,得到所述多个第一关键点的检测位置坐标;
获取所述视频流中上一帧图像对应的第一形状拓扑结构信息,以及获取所述当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息;根据所述多个第一关键点的检测位置坐标、所述第一形状拓扑结构信息以及所述标识信息,确定所述多个第一关键点的目标位置坐标,并将所述多个第一关键点移动至所述目标位置坐标。
在一个实施例中,所述第一形状拓扑结构信息包括所述上一帧图像中多个第二关键点的坐标以及所述多个第二关键点构成的边。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据所述标识信息,确定所述多个第一关键点构成的边;当抖动误差满足预设阈值时,根据所述多个第一关键点构成的边的长度与目标位置坐标矩阵之间的关联关系、所述多个第二关键点构成的边中第i条边的长度、所述多个第一关键点的检测位置坐标矩阵、调整系数以及所述多个第二关键点构成的边的总数量,确定所述多个第一关键点的目标位置坐标矩阵;其中,所述目标位置坐标矩阵包括所述多个第一关键点的目标位置坐标;所述检测位置坐标矩阵包括所述多个第一关键点的检测位置坐标。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
当抖动误差满足预设阈值时,根据用于指示所述标识信息的矩阵、所述多个第二关键点的坐标矩阵、调整系数以及所述多个第一关键点的检测位置坐标矩阵,确定所述多个第一关键点的目标位置坐标矩阵,其中,所述多个第二关键点的坐标矩阵包括所述多个第二关键点的坐标。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据所述标识信息,以及所述多个第一关键点的目标位置坐标,构建所述当前帧图像对应的形状拓扑,得到所述当前帧图像对应的第二形状拓扑结构信息;其中,所述第二形状拓扑结构信息包括:所述多个第一关键点的目标位置坐标,以及根据所述多个第一关键点的目标位置坐标构成的边。
在一个实施例中,所述上一帧图像中多个第二关键点的坐标包括:所述多个第二关键点的检测位置坐标,或者,所述多个第二关键点的目标位置坐标。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据用户输入的检测需求以及预设的第一映射关系,确定所述当前帧图像中的待检测对象;检测所述待检测对象,得到所述待检测对象对应的所述多个第一关键点的检测位置坐标。其中,所述第一映射关系包括不同的检测需求与待检测对象之间的对应关系。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据所述待检测对象与第二映射关系,确定所述待检测对象对应的多个第一关键点中能够连接成边的关键点的标识信息;其中,所述第二映射关系包括不同的待检测对象与多个第一关键点中能够连接成边的关键点的标识信息之间的对应关系。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种关键点的抖动处理方法,其特征在于,包括:
检测视频流内当前帧图像的多个第一关键点,得到所述多个第一关键点的检测位置坐标;
获取所述视频流中上一帧图像对应的第一形状拓扑结构信息,以及获取所述当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息;
根据所述多个第一关键点的检测位置坐标、所述第一形状拓扑结构信息以及所述标识信息,确定所述多个第一关键点的目标位置坐标,并将所述多个第一关键点移动至所述目标位置坐标。
2.根据权利要求1所述的方法,其特征在于,所述第一形状拓扑结构信息包括所述上一帧图像中多个第二关键点的坐标以及所述多个第二关键点构成的边。
3.根据权利要求2所述的方法,其特征在于,所述根据所述多个第一关键点的检测位置坐标、所述第一形状拓扑结构信息以及所述标识信息,确定所述多个第一关键点的目标位置坐标,包括:
根据所述标识信息,确定所述多个第一关键点构成的边;
当抖动误差满足预设阈值时,根据所述多个第一关键点构成的边的长度与目标位置坐标矩阵之间的关联关系、所述多个第二关键点构成的边中第i条边的长度、所述多个第一关键点的检测位置坐标矩阵、调整系数以及所述多个第二关键点构成的边的总数量,确定所述多个第一关键点的目标位置坐标矩阵;其中,所述目标位置坐标矩阵包括所述多个第一关键点的目标位置坐标;所述检测位置坐标矩阵包括所述多个第一关键点的检测位置坐标。
4.根据权利要求3所述的方法,其特征在于,所述当抖动误差满足预设阈值时,根据所述多个第一关键点构成的边的长度与目标位置坐标矩阵之间的关联关系、所述多个第二关键点构成的边中第i条边的长度、所述多个第一关键点的检测位置坐标矩阵、调整系数以及所述多个第二关键点构成的边的总数量,确定所述多个第一关键点的目标位置坐标矩阵,包括:
当抖动误差满足预设阈值时,根据用于指示所述标识信息的矩阵、所述多个第二关键点的坐标矩阵、调整系数以及所述多个第一关键点的检测位置坐标矩阵,确定所述多个第一关键点的目标位置坐标矩阵,其中,所述多个第二关键点的坐标矩阵包括所述多个第二关键点的坐标。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述标识信息,以及所述多个第一关键点的目标位置坐标,构建所述当前帧图像对应的形状拓扑,得到所述当前帧图像对应的第二形状拓扑结构信息;
其中,所述第二形状拓扑结构信息包括:所述多个第一关键点的目标位置坐标,以及根据所述多个第一关键点的目标位置坐标构成的边。
6.根据权利要求2-4中任一项所述的方法,其特征在于,所述上一帧图像中多个第二关键点的坐标包括:所述多个第二关键点的检测位置坐标,或者,所述多个第二关键点的目标位置坐标。
7.根据权利要求1所述的方法,其特征在于,所述检测视频流内当前帧图像的多个第一关键点,包括:
根据用户输入的检测需求以及预设的第一映射关系,确定所述当前帧图像中的待检测对象;其中,所述第一映射关系包括不同的检测需求与待检测对象之间的对应关系;
检测所述待检测对象,得到所述待检测对象对应的所述多个第一关键点的检测位置坐标。
8.一种关键点的抖动处理装置,其特征在于,包括:
检测模块,用于检测视频流内当前帧图像的多个第一关键点,得到所述多个第一关键点的检测位置坐标;
获取模块,用于获取所述视频流中上一帧图像对应的第一形状拓扑结构信息,以及获取所述当前帧图像的多个第一关键点中能够连接成边的关键点的标识信息;确定模块,用于根据所述多个第一关键点的检测位置坐标、所述第一形状拓扑结构信息以及所述标识信息,确定所述多个第一关键点的目标位置坐标;
移动模块,用于将所述多个第一关键点移动至所述目标位置坐标。
9.一种终端设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810620519.8A CN108830900B (zh) | 2018-06-15 | 2018-06-15 | 关键点的抖动处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810620519.8A CN108830900B (zh) | 2018-06-15 | 2018-06-15 | 关键点的抖动处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108830900A true CN108830900A (zh) | 2018-11-16 |
CN108830900B CN108830900B (zh) | 2021-03-12 |
Family
ID=64142220
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810620519.8A Active CN108830900B (zh) | 2018-06-15 | 2018-06-15 | 关键点的抖动处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108830900B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109684920A (zh) * | 2018-11-19 | 2019-04-26 | 腾讯科技(深圳)有限公司 | 物体关键点的定位方法、图像处理方法、装置及存储介质 |
CN109788190A (zh) * | 2018-12-10 | 2019-05-21 | 北京奇艺世纪科技有限公司 | 一种图像处理方法、装置、移动终端及存储介质 |
CN110148158A (zh) * | 2019-05-13 | 2019-08-20 | 北京百度网讯科技有限公司 | 用于处理视频的方法、装置、设备和存储介质 |
CN110349177A (zh) * | 2019-07-03 | 2019-10-18 | 广州多益网络股份有限公司 | 一种连续帧视频流的人脸关键点跟踪方法和系统 |
CN110401868A (zh) * | 2019-08-23 | 2019-11-01 | 北京达佳互联信息技术有限公司 | 一种素材展示方法及装置 |
CN110428390A (zh) * | 2019-07-18 | 2019-11-08 | 北京达佳互联信息技术有限公司 | 一种素材展示方法、装置、电子设备和存储介质 |
CN111027412A (zh) * | 2019-11-20 | 2020-04-17 | 北京奇艺世纪科技有限公司 | 一种人体关键点识别方法、装置及电子设备 |
CN113553963A (zh) * | 2021-07-27 | 2021-10-26 | 广联达科技股份有限公司 | 安全帽的检测方法、装置、电子设备及可读存储介质 |
CN114998812A (zh) * | 2022-07-28 | 2022-09-02 | 北京达佳互联信息技术有限公司 | 关键点的位置更新方法、装置、计算机设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1126413A3 (en) * | 2000-02-08 | 2003-09-17 | University of Washington | Detecting and segmenting local deformation in a tracked video object |
CN102831382A (zh) * | 2011-06-15 | 2012-12-19 | 北京三星通信技术研究有限公司 | 人脸跟踪设备和方法 |
CN106558042A (zh) * | 2015-09-29 | 2017-04-05 | 阿里巴巴集团控股有限公司 | 一种对图像进行关键点定位的方法和装置 |
CN106875421A (zh) * | 2017-01-19 | 2017-06-20 | 博康智能信息技术有限公司北京海淀分公司 | 一种多目标跟踪方法及装置 |
CN106909888A (zh) * | 2017-01-22 | 2017-06-30 | 南京开为网络科技有限公司 | 应用于移动设备端的人脸关键点跟踪系统及方法 |
CN107920257A (zh) * | 2017-12-01 | 2018-04-17 | 北京奇虎科技有限公司 | 视频关键点实时处理方法、装置及计算设备 |
-
2018
- 2018-06-15 CN CN201810620519.8A patent/CN108830900B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1126413A3 (en) * | 2000-02-08 | 2003-09-17 | University of Washington | Detecting and segmenting local deformation in a tracked video object |
CN102831382A (zh) * | 2011-06-15 | 2012-12-19 | 北京三星通信技术研究有限公司 | 人脸跟踪设备和方法 |
CN106558042A (zh) * | 2015-09-29 | 2017-04-05 | 阿里巴巴集团控股有限公司 | 一种对图像进行关键点定位的方法和装置 |
CN106875421A (zh) * | 2017-01-19 | 2017-06-20 | 博康智能信息技术有限公司北京海淀分公司 | 一种多目标跟踪方法及装置 |
CN106909888A (zh) * | 2017-01-22 | 2017-06-30 | 南京开为网络科技有限公司 | 应用于移动设备端的人脸关键点跟踪系统及方法 |
CN107920257A (zh) * | 2017-12-01 | 2018-04-17 | 北京奇虎科技有限公司 | 视频关键点实时处理方法、装置及计算设备 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109684920B (zh) * | 2018-11-19 | 2020-12-11 | 腾讯科技(深圳)有限公司 | 物体关键点的定位方法、图像处理方法、装置及存储介质 |
US11450080B2 (en) | 2018-11-19 | 2022-09-20 | Tencent Technology (Shenzhen) Company Limited | Image processing method and apparatus, and storage medium |
CN109684920A (zh) * | 2018-11-19 | 2019-04-26 | 腾讯科技(深圳)有限公司 | 物体关键点的定位方法、图像处理方法、装置及存储介质 |
CN109788190A (zh) * | 2018-12-10 | 2019-05-21 | 北京奇艺世纪科技有限公司 | 一种图像处理方法、装置、移动终端及存储介质 |
CN110148158A (zh) * | 2019-05-13 | 2019-08-20 | 北京百度网讯科技有限公司 | 用于处理视频的方法、装置、设备和存储介质 |
CN110349177A (zh) * | 2019-07-03 | 2019-10-18 | 广州多益网络股份有限公司 | 一种连续帧视频流的人脸关键点跟踪方法和系统 |
CN110428390B (zh) * | 2019-07-18 | 2022-08-26 | 北京达佳互联信息技术有限公司 | 一种素材展示方法、装置、电子设备和存储介质 |
CN110428390A (zh) * | 2019-07-18 | 2019-11-08 | 北京达佳互联信息技术有限公司 | 一种素材展示方法、装置、电子设备和存储介质 |
US11521368B2 (en) * | 2019-07-18 | 2022-12-06 | Beijing Dajia Internet Information Technology Co., Ltd. | Method and apparatus for presenting material, and storage medium |
CN110401868A (zh) * | 2019-08-23 | 2019-11-01 | 北京达佳互联信息技术有限公司 | 一种素材展示方法及装置 |
CN111027412A (zh) * | 2019-11-20 | 2020-04-17 | 北京奇艺世纪科技有限公司 | 一种人体关键点识别方法、装置及电子设备 |
CN111027412B (zh) * | 2019-11-20 | 2024-03-08 | 北京奇艺世纪科技有限公司 | 一种人体关键点识别方法、装置及电子设备 |
CN113553963A (zh) * | 2021-07-27 | 2021-10-26 | 广联达科技股份有限公司 | 安全帽的检测方法、装置、电子设备及可读存储介质 |
CN114998812A (zh) * | 2022-07-28 | 2022-09-02 | 北京达佳互联信息技术有限公司 | 关键点的位置更新方法、装置、计算机设备及存储介质 |
CN114998812B (zh) * | 2022-07-28 | 2022-12-09 | 北京达佳互联信息技术有限公司 | 关键点的位置更新方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108830900B (zh) | 2021-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108830900A (zh) | 关键点的抖动处理方法和装置 | |
WO2020103647A1 (zh) | 物体关键点的定位方法、图像处理方法、装置及存储介质 | |
WO2020098076A1 (zh) | 跟踪目标的定位方法、装置、设备及存储介质 | |
CN109344806B (zh) | 利用多任务目标检测模型执行目标检测的方法和系统 | |
CN108805898A (zh) | 视频图像处理方法和装置 | |
CN108537721A (zh) | 全景图像的处理方法、装置及电子设备 | |
CN106651987A (zh) | 路径规划方法及装置 | |
CN109726647A (zh) | 点云的标注方法、装置、计算机设备和存储介质 | |
CN110309236B (zh) | 地图中寻路的方法、装置、计算机设备和存储介质 | |
CN110362265B (zh) | 显示界面的控制方法、装置、计算机设备和存储介质 | |
CN107451193A (zh) | 一种客户端页面加载时间的获取方法及装置,电子设备 | |
CN109407882A (zh) | 触点轨迹平滑的方法、装置、设备和存储介质 | |
CN107888970A (zh) | 视频处理方法、装置、嵌入式设备及存储介质 | |
CN107222737B (zh) | 一种深度图像数据的处理方法及移动终端 | |
CN109685856A (zh) | 医学扫描物体运动幅度计算方法、装置、设备和存储介质 | |
CN109448018B (zh) | 跟踪目标的定位方法、装置、设备及存储介质 | |
CN114638862A (zh) | 一种视觉跟踪方法及跟踪装置 | |
CN112395857A (zh) | 基于对话系统的语音文本处理方法、装置、设备及介质 | |
CN108876713A (zh) | 二维模板图像的映射方法、装置、终端设备和存储介质 | |
CN108986031A (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
CN110956131A (zh) | 单目标追踪方法、装置及系统 | |
CN110209970A (zh) | 序列图像显示方法、系统、装置、设备和存储介质 | |
CN108830928A (zh) | 三维模型的映射方法、装置、终端设备和可读存储介质 | |
CN109814784B (zh) | 图片旋转方法、装置、计算机设备和存储介质 | |
CN111077999B (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 |