关键点检测方法、装置和电子设备转让专利

申请号 : CN202111487812.X

文献号 : CN113887547B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王鹏程高原刘霄

申请人 : 北京世纪好未来教育科技有限公司

摘要 :

本公开提供一种关键点检测方法、装置和电子设备,所述方法包括:提取当前帧图像中关键点的初始位置和光流跟踪特征,基于光流跟踪特征和历史帧图像中关键点的关键点信息,确定当前帧图像中关键点的帧间移动参数,在光流跟踪特征至少满足距离约束条件时,基于当前帧图像中关键点的初始位置和光流跟踪特征,确定当前帧图像中关键点的检测结果。本公开方法可以降低关键点检测抖动,使得关键点位置跟随及时,不会出现关键点的拖动的问题。

权利要求 :

1.一种关键点检测方法,其特征在于,所述方法包括:提取当前帧图像中关键点的初始位置和光流跟踪特征;

基于所述光流跟踪特征和历史帧图像中所述关键点的关键点信息,确定所述当前帧图像中所述关键点的帧间移动参数;

在所述光流跟踪特征至少满足距离约束条件时,基于所述当前帧图像中所述关键点的所述初始位置和所述光流跟踪特征,确定所述当前帧图像中所述关键点的检测结果,其中,所述距离约束条件至少包括所述帧间移动参数不大于预设帧间移动阈值,所述距离约束条件还包括:

所述当前帧图像中所述关键点的帧内偏移参数不大于预设帧内偏移阈值,所述帧内偏移参数由所述当前帧图像中所述关键点的初始位置和光流跟踪特征确定。

2.根据权利要求1所述的方法,其特征在于,所述当前帧图像含有目标物体;

所述预设帧间移动阈值与所述目标物体在所述当前帧图像的面积占比正相关,所述预设帧间移动阈值与第一转换因子正相关;

所述目标物体的面积为所述目标物体的外接框面积,所述目标物体的外接框面积由属于所述目标物体的多个关键点中的至少两个关键点确定。

3.根据权利要求2所述的方法,其特征在于,所述预设帧间移动阈值满足第一阈值公式:

其中,Thresh1表示所述预设帧间移动阈值,ATIMw表示属于所述目标物体的多个关键点在宽度方向的最大跨度,ATIMh表示属于所述目标物体的多个关键点在高度方向的最大跨度,imagew表示所述当前帧图像的宽,imageh表示所述当前帧图像的高,L1表示所述第一转换因子。

4.根据权利要求1所述的方法,其特征在于,所述当前帧图像含有目标物体;

所述预设帧内偏移阈值与所述目标物体在所述当前帧图像的面积占比正相关,所述预设帧内偏移阈值与第二转换因子正相关,所述目标物体的面积为所述目标物体的外接框面积,所述目标物体的外接框面积由属于所述目标物体的多个关键点中的至少两个关键点的初始位置确定。

5.根据权利要求4所述的方法,其特征在于,所述预设帧内偏移阈值满足第二阈值公式:

其中,Thresh2表示所述预设帧内偏移阈值,ATIMw表示属于所述目标物体的多个关键点在宽度方向的最大跨度,ATIMh表示属于所述目标物体的多个关键点在高度方向的最大跨度,imagew表示所述当前帧图像的宽,imageh表示所述当前帧图像的高,L2表示所述第二转换因子。

6.根据权利要求1 5任一项所述的方法,其特征在于,所述方法还包括:~

响应于确定所述光流跟踪特征满足跟踪状态约束条件,基于所述当前帧图像中所述关键点的初始位置和光流跟踪特征,确定所述当前帧图像中所述关键点的检测结果,其中,所述跟踪状态约束条件为所述光流跟踪特征的跟踪状态为跟踪成功状态。

7.根据权利要求1 5任一项所述的方法,其特征在于,所述当前帧图像含有目标物体,~

所述目标物体包括至少一个部位,所述至少一个部位中的同一部位包括至少两个关键点;

所述基于所述当前帧图像中所述关键点的所述初始位置和所述光流跟踪特征,确定所述当前帧图像中所述关键点的检测结果,包括:在所述当前帧图像中,基于所述关键点所属部位的所有关键点的帧间移动参数以及预设帧间移动阈值,确定所述关键点的初始位置权重和光流跟踪特征权重;

基于所述初始位置权重和所述光流跟踪特征权重,对所述当前帧图像中所述关键点的所述初始位置和所述光流跟踪特征进行加权,以确定所述当前帧图像中所述关键点的检测结果。

8.根据权利要求7所述的方法,其特征在于,所述初始位置权重与所述当前帧图像中所述关键点所属部位的所有关键点的帧间移动参数的平均值正相关,所述光流跟踪特征权重与所述当前帧图像中所述关键点所属部位的所有关键点的帧间移动参数的平均值负相关;

和/或,

在所述当前帧图像中,属于所述目标物体中同一部位的各个关键点的初始位置权重相同,且属于所述目标物体中同一部位的各个关键点的所述光流跟踪特征权重相同。

9.根据权利要求7所述的方法,其特征在于,所述光流跟踪特征权重满足:;

其中, 表示所述当前帧图像中属于所述目标物体的第i个部位中第j个关键点的光流跟踪特征权重, 表示所述目标物体的第i个部位的所有关键点的帧间移动参数的平均值,parti表示所述目标物体的第i个部位,i表示不小于1且不大于K的整数,j表示不小于1且不大于Q的整数,K表示所述目标物体所含有的部位总数,Q表示所述目标物体包括的关键点总数,Thresh1表示所述预设帧间移动阈值。

10.根据权利要求1 5任一项所述的方法,其特征在于,所述历史帧图像与所述当前帧~

图像的显示顺序相邻;或,

所述历史帧图像与所述当前帧图像的显示顺序不相邻。

11.根据权利要求1 5任一项所述的方法,其特征在于,所述关键点信息为所述历史帧~

图像中所述关键点的初始位置;或,所述关键点信息为所述历史帧图像中所述关键点的检测结果。

12.根据权利要求1 5任一项所述的方法,其特征在于,所述光流跟踪特征为正向光流~

跟踪特征,所述光流跟踪特征的跟踪状态包括正向跟踪状态;或,所述光流跟踪特征包括正向光流跟踪特征,所述光流跟踪特征的跟踪状态包括正向跟踪状态和反向跟踪状态。

13.根据权利要求1 5任一项所述的方法,其特征在于,所述提取当前帧图像中关键点~

的初始位置和光流跟踪特征,包括:采用关键点检测技术确定所述当前帧图像中所述关键点的初始位置;

基于所述当前帧图像、所述历史帧图像以及所述历史帧图像中所述关键点的关键点信息,确定所述当前帧图像中所述关键点的光流跟踪特征。

14.一种关键点检测装置,其特征在于,包括:提取模块,用于提取当前帧图像中关键点的初始位置和光流跟踪特征;

确定模块,用于基于所述光流跟踪特征和历史帧图像中所述关键点的关键点信息,确定所述当前帧图像中所述关键点的帧间移动参数;

融合模块,用于在所述光流跟踪特征至少满足距离约束条件时,基于所述当前帧图像中所述关键点的所述初始位置和所述光流跟踪特征,确定所述当前帧图像中所述关键点的检测结果,其中,所述距离约束条件至少包括所述帧间移动参数不大于预设帧间移动阈值,所述距离约束条件还包括:

所述当前帧图像中所述关键点的帧内偏移参数不大于预设帧内偏移阈值,所述帧内偏移参数由所述当前帧图像中所述关键点的初始位置和光流跟踪特征确定。

15.一种电子设备,其特征在于,包括:处理器;以及,

存储程序的存储器,

其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据权利要求1 13中任一项所述的方法。

~

16.一种非瞬时计算机可读存储介质,其特征在于,所述非瞬时计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行根据权利要求1 13中任一项所述~

的方法。

说明书 :

关键点检测方法、装置和电子设备

技术领域

[0001] 本发明涉及计算机视觉技术领域,尤其涉及一种关键点检测方法、装置和电子设备。

背景技术

[0002] 人脸关键点检测也称为人脸关键点检测、定位或者人脸对齐,可以对人脸图像进行分析,定位出人脸面部的关键区域位置,包括眉毛、眼睛、鼻子、嘴巴、脸部轮廓等,其作为
“前置”基础算法,应用在人脸识别、表情分析、三维人脸重建等领域。
[0003] 在进行人脸关键点检测时,可以对人脸关键点进行标注,形成关键点集合,然后以关键点集合为训练数据,训练深度网络模型,从而获得人脸关键点检测模型。通过人脸关键
点检测模型对人脸进行检测,所获得的关键点可以确定人脸的姿态,为“后置”应用提供保
障。

发明内容

[0004] 根据本公开的一方面,提供了一种关键点检测方法,所述方法包括:
[0005] 提取当前帧图像中关键点的初始位置和光流跟踪特征;
[0006] 基于光流跟踪特征和历史帧图像中关键点的关键点信息,确定当前帧图像中关键点的帧间移动参数;
[0007] 在光流跟踪特征至少满足距离约束条件时,基于当前帧图像中关键点的初始位置和光流跟踪特征,确定当前帧图像中关键点的检测结果,其中,距离约束条件至少包括帧间
移动参数不大于预设帧间移动阈值。
[0008] 根据本公开的另一方面,提供了一种关键点检测装置,包括:
[0009] 提取模块,用于提取在当前帧图像中关键点的初始位置和光流跟踪特征;
[0010] 确定模块,用于基于光流跟踪特征和历史帧图像中关键点的关键点信息,确定当前帧图像中关键点的帧间移动参数;
[0011] 融合模块,用于在光流跟踪特征至少满足距离约束条件时,基于当前帧图像中关键点的初始位置和光流跟踪特征,确定当前帧图像中关键点的检测结果,其中,距离约束条
件至少包括帧间移动参数不大于预设帧间移动阈值。
[0012] 根据本公开的另一方面,提供了一种电子设备,包括:
[0013] 处理器;以及,
[0014] 存储程序的存储器,
[0015] 其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据本公开示例性实施例所述的方法。
[0016] 根据本公开的另一方面,提供了一种非瞬时计算机可读存储介质,其特征在于,所述非瞬时计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行
根据本公开示例性实施例所述的方法。
[0017] 本公开实施例中提供的一个或多个技术方案,提取当前帧图像中关键点的初始位置和光流跟踪特征后,可以基于光流跟踪特征和历史帧图像中关键点的关键点信息,从而
确定当前图像中关键点的帧间移动参数。当光流跟踪特征至少满足帧间移动参数不大于预
设帧间移动阈值这一距离约束条件的情况下,说明该历史帧图像和当前帧图像中关键点的
移动距离在可接受范围内。在此基础上,基于关键点在当前帧图像中的初始位置和光流跟
踪特征,所确定当前帧图像中关键点的检测结果可以保证视频图像的关键点检测结果连续
性和稳定性比较好,因此,本公开实施例可以降低视频图像的关键点检测抖动,从而支持
“后置”应用的要求。另外,本公开示例性实施例将关键点的初始位置和相应光流跟踪特征,
使得关键点位置跟随及时,不会出现关键点的拖动的问题。

附图说明

[0018] 在下面结合附图对于示例性实施例的描述中,本公开的更多细节、特征和优点被公开,在附图中:
[0019] 图1示出能够用于本公开示例性实施例的视频直播系统的结构示意图;
[0020] 图2示出了本公开示例性实施例的人脸关键点的标注过程示意图;
[0021] 图3示出了本公开示例性实施例的一种方法的流程示意图;
[0022] 图4示出了本公开示例性实施例的人脸关键点的初始位置示意图;
[0023] 图5示出了本公开示例性实施例的另一种方法的流程示意图;
[0024] 图6示出了本公开示例性实施例的人脸关键点的检测方法的示例流程图;
[0025] 图7示出了根据本公开示例性实施例的关键点检测装置的功能模块示意性框图;
[0026] 图8示出了根据本公开示例性实施例的芯片的示意性框图;
[0027] 图9示出了能够用于实现本公开的实施例的示例性电子设备的结构框图。

具体实施方式

[0028] 下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这
里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的
是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
[0029] 应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公
开的范围在此方面不受限制。
[0030] 本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示
“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定
义将在下文描述中给出。需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的
装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者
相互依存关系。
[0031] 需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
[0032] 本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
[0033] 在介绍本公开实施例之前首先对本公开实施例中涉及到的相关名词作如下释义:
[0034] 关键点本质上是一种特征。它是对一个固定区域或者空间物理关系的抽象描述,描述的是一定邻域范围内的组合或上下文关系。它不仅仅是一个点信息或代表一个位置,
更代表着上下文与周围邻域的组合关系。
[0035] 光流是空间运动物体在观察成像平面上的像素运动的瞬时速度。
[0036] 稠密光流是一种针对图像或指定的某一片区域进行逐点匹配的图像配准方法,它计算图像上所有的点的偏移量,从而形成一个稠密的光流场。
[0037] 稀疏光流是指指定一组点进行跟踪,这组点最好具有某种明显的特性,例如Harris角点等,那么跟踪就会相对稳定和可靠。
[0038] Lucas‑Kanade光流算法(又称L‑K光流算法)是一种两帧差分的光流估计算法。它由Bruce D. Lucas 和 Takeo Kanade提出。L‑K光流算法的约束条件为:小速度,亮度不变
以及区域一致性较强。
[0039] 金字塔Lucas_Kanade光流法是Jean‑Yves Bouguet提出一种基于金字塔分层,针对仿射变换的改进Lucas‑Kanade算法。它是通过生成原图像的金字塔图像,逐层求解,不断
精确获得光流特征,可以适用于物体运动速度较快的图像。
[0040] 帧率(Frame rate)是以帧称为单位的位图图像连续出现在显示器上的频率(速率)。该术语同样适用于胶片和摄像机,计算机图形和动作捕捉系统。
[0041] 欧氏距离,也称欧几里得度量欧几里得距离是一个通常采用的距离定义它是在m维空间中两个点之间的真实距离在二维空间中的欧氏距离就是两点之间的直线段距离可
运用在语音识别中进行失真测度。
[0042] 本公开示例性实施例提供一种关键点检测方法,可以用于各种可以活动的关键点检测中,如人类、动物、昆虫、植物等,但不仅限于此。以人类为例,可以进行人体关键点检
测、人脸关键点检测、手势关键点检测及其它肢体姿态检测等。
[0043] 本公开示例性的方法可以应用于各种视频播放系统中,如视频直播系统、视频录播系统等。图1示出能够用于本公开示例性实施例的视频直播系统的结构示意图。如图1所
示,本公开示例性实施例的视频直播系统100可以包括:视频采集装置101、图像处理装置
102和播放客户端103。视频采集装置101和播放客户端103均与图像处理装置102通信。
[0044] 如图1所示,上述视频采集装置101可以包括但不仅限于相机、平板电脑、摄影机、云台相机、监控器等各种可以实现图像采集功能的视频采集器件。视频采集装置所采集的
视频图像可以为各种形式的视频图像,如红外视频图像、黑白视频图像或彩色视频图像等,
但不仅限于此。图像处理装置102可以执行关键点检测方法。播放客户端103可以分为常见
的智能手机客户端和PC客户端。例如:在目前直播行业中,视频采集装置101和播放客户端
103均可以为直播从业人员所使用的智能手机。
[0045] 如图1所示,当视频采集装置101具有显示界面,且播放客户端103具有图像采集功能的情况下,该视频采集装置101也可以作为播放客户端使用。此时,该视频采集装置101可
以为直播受众所持有的播放客户端。例如:当直播从业人员与直播受众可以进行视频互动
时,直播受众所持有的播放客户端所播放的视频可以为直播从业人员所使用的视频采集装
置拍摄的视频。直播从业人员所持有的视频采集装置也可以播放直播受众持有的播放客户
端拍摄的视频(针对该视频,播放客户端为视频采集装置,视频采集装置为播放客户端)。由
此可见,如果视频采集装置具有显示界面,该视频采集装置和播放客户端均可以包括但不
仅限于手机、平板电脑、电视机、显示器、笔记本电脑等。并且,如果播放客户端具有图像采
集功能,支持该图像采集功能的硬件可以集成在该播放客户端上。例如常见的带有摄像头
的手机、平板电脑、一体机电脑等。
[0046] 如图1所示,上述图像处理装置102可以为一个服务器,也可以为图1所示的多个服务器构成的服务器集群1021。服务器集群与网络管理中心104通信。从通信方式来说,通信
网络可以分为无线通信网络,也可以为有线通信网络;从通信范围来说,通信网络可以为局
域通信网络,也可以为广域通信网络。例如:播放客户端103可以通过Internet登陆网络管
理中心104访问服务器,实现对服务器以及服务器上的媒体资源的整体控制与管理。
[0047] 如图1所示,上述服务器作为整个系统的核心组成部分,既可以接收视频采集装置101所发送的音视频数据,将其进行压缩编码处理成适合音视频数据传输的格式文件后,通
过网络管理中心及时发送到播放客户端103进行音视频播放。同时,服务器还可以具备对系
统数据,包括媒体数据、用户数据等进行存储和管理的功能,这些功能的实现实际由PC客户
端通过访问网络管理中心发布的Web网站来实现。
[0048] 示例性的,如图1所示,以服务器集群为例,该服务器集群1021可以包括Web服务器1021a、数据库服务器1021b、视频服务器1021c和流媒体服务器1021d等。Web服务器1021a可
以处理Web客户端的请求并返回相应请求。数据库服务器1021b用于提供数据存储服务。视
频服务器1021c又可以定义为视频编解码器,用于对音视频的编解码处理,存储及处理,以
满足存储和传输的要求。流媒体服务器1021d可以对视频采集装置101所提供的图像数据进
行流媒体化处理,保证音视频传输的流畅性。所生成的流媒体数据可以作为历史文件存储
至服务器,也可以直接发送到播放客户端103进行播放。
[0049] 在一种应用场景中,当播放客户端具有图像采集功能,视频采集装置具有图像播放功能时,播放客户端采集到用户视频图像,并通过网络管理中心上传到服务器集群,服务
器集群中的视频服务器将用户视频图像解码后,可以对所获得的用户视频图像进行关键点
检测。例如:当用户视频图像含有用户脸部图像,可以通过对用户脸部图像进行关键点进行
检测,从而确定用户脸部表情,分析用户情绪。又例如:当用户视频图像含有肢体图像,可以
通过对肢体关键点进行检测,确定肢体动作(如手势),以分析用户是否按照指定动作进行
运动。
[0050] 以人脸关键点检测为例,可以对人脸进行关键点进行检测。图2示出了本公开示例性实施例的人脸关键点的检测过程示意图。如图2所示,对图2中的人脸201进行关键点检测
后,可以获得添加有关键点的人脸202。图2中每个关键点代表该关键点的位置。但是由于光
照、遮挡、人脸位移等因素的影响,为人脸关键点检测带来比较大的“标注噪声”,导致人脸
关键点检测结果抖动异常。相关技术中,可以采用帧间滤波平滑方式降低人脸关键点检测
结果的抖动程度,达到稳定关键点的目的。这种方法所检测到的人脸关键点延时拖动,导致
点位跟踪不及时。
[0051] 本公开示例性实施例提供的方法通过将光流跟踪技术所获得的光流跟踪特征和关键点检测技术所获得的初始位置进行融合,降低关键点检测结果抖动程度,并提高关键
点的点位跟踪及时性。本公开示例性实施例的方法可以由上述服务器执行,也可以由上述
服务器中的芯片执行。下面以服务器为执行主体进行示例描述。
[0052] 图3示出了本公开示例性实施例的一种方法的流程示意图。如图3所示,本公开示例性实施例的方法包括:
[0053] 步骤301:提取当前帧图像中关键点的初始位置和光流跟踪特征。应理解,本公开示例性实施例的当前帧图像是指正在被执行本公开示例性方法的视频帧,该视频帧被称为
当前视频帧。假设视频图像含有目标物体,关键点可以泛指待检测的当前帧图像中目标物
体中的所有关键点。
[0054] 在实际应用中,可以采用关键点检测技术确定当前帧图像中关键点的初始位置,基于当前帧图像、历史帧图像以及历史帧图像中关键点的关键点信息,确定当前帧图像中
该关键点的光流跟踪特征。应理解,与当前帧图像相对的,若已经经过本公开示例性的方法
处理的视频帧图像称为历史视频帧。
[0055] 示例性的,在关键点检测和光流跟踪过程中,其结果均为顺序性输出,因此,将输出顺序相同的初始位置和光流跟踪特征作为同一关键点的初始位置和光流跟踪特征。例
如:利用关键点检测网络对视频图像的人脸进行关键点检测,可以有序输出68个关键点的
初始位置。基于此,利用关键点检测网络对当前帧图像的人脸进行关键点检测,可以有序输
出当前帧图像中68个关键点的初始位置。同时,利用当前帧图像、历史帧图像和历史帧图像
中68个关键点信息,可以有序获得当前帧图像中68个关键点的光流跟踪特征。假设关键点
的初始位置为顺序输出的第12个关键点的初始位置,那么关键点的光流跟踪特征为顺序输
出的第12个关键点的光流跟踪特征。基于此,可以通过初始位置和光流跟踪特征的输出次
序,确定初始位置对应的关键点和光流跟踪特征对应的关键点是否为同一关键点。
[0056] 本公开示例性实施例的历史帧关键点信息对应的历史帧图像在当前帧图像之前显示,且历史帧图像与当前帧图像的显示顺序可以相邻,也可以不相邻。
[0057] 假设视频图像包括N帧图像,N为大于或等于2的整数,按照显示顺序,当前帧图像可以为视频图像的第k帧图像,历史视频帧为第t帧图像,t<k,则t为大于或等于1的整数,k
为大于等于2且小于或等于N的整数。
[0058] 当历史帧图像与当前帧图像的显示顺序相邻时,k‑t=1,也就是说,历史帧图像为当前帧图像的上一帧图像,当前帧图像为历史帧图像的下一帧图像。此时,以历史帧图像与
当前帧图像为基础所确定的光流跟踪特征更为准确,其连续性也更好。
[0059] 当历史帧图像与当前帧图像的显示顺序不相邻时,k‑t≥2,也就是说,历史帧图像与当前帧图像之间还包括至少一帧中间帧图像。中间帧图像与历史帧图像和当前帧图像同
属于一个视频图像,其显示顺序位于历史帧图像和当前帧图像之间。至于历史帧图像与当
前帧图像之间所包括的中间帧图像的数量,则可以根据实际情况决定。
[0060] 以视频直播场景为例,人眼对视频图像的帧率识别极限可以不低于每秒25帧。当视频图像的帧率低于每秒25帧,视频图像播放会存在抖动、不连续的问题。基于此,如果视
频图像的帧率为每秒25帧,或者接近每秒25帧,可以选择与当前帧图像的显示顺序相邻的
图像帧作为历史帧图像,也就是说,历史帧图像与当前帧图像之间不存在中间帧图像;例
如:当视频图像的帧率为每秒25帧,每帧图像的播放时长为40ms,则从历史帧图像开始播放
到当前帧图像播放结束,需要使用80ms。
[0061] 如果视频图像的帧率比较高,如大于或等于每秒60帧或者每秒60帧 120帧,则可~
以从视频图像中抽取与当前帧图像不相邻的图像帧作为历史帧图像使用。示例性的,当前
帧图像与历史帧图像之间可以间隔1 4个中间帧图像。
~
[0062] 当视频图像的帧率为每秒60帧,每帧图像的播放时长为16.7ms,则历史帧图像和当前帧图像之间存在一个中间帧图像,从历史帧图像开始播放到当前帧图像播放结束,需
要使用50.1ms 66.8ms,从历史帧图像播放完成到当前帧图像开始播放的时长为16.7ms。
~
[0063] 当视频图像的帧率为每秒80帧,每帧图像的播放时长为12.5ms,则历史帧图像和当前帧图像之间存在1个或2个中间帧图像,从历史帧图像开始播放到当前帧图像播放结
束,需要使用37.5ms 50ms,从历史帧图像播放完成到当前帧图像开始播放的时长为12.5ms
~
25ms。
~
[0064] 当视频图像的帧率为每秒120帧,每帧图像的播放时长为8.3ms,则历史帧图像和当前帧图像之间存在1个 4个中间帧图像,从历史帧图像开始播放到当前帧图像播放结束,
~
需要使用24.9ms 41.5ms,从历史帧图像播放完成到当前帧图像开始播放的时长为8.3ms
~ ~
24.9ms。
[0065] 可见,本公开示例性实施例可以控制历史帧图像和当前帧图像之间的中间帧图像数量,保证从历史帧图像播放完成到当前帧图像开始播放的时长在25ms以下,这个时间间
隔下的中间帧图像不容易被人眼识别,因此,在确定光流跟踪特征时,即使所引入的历史帧
关键点信息对应的历史帧图像与当前帧图像之间有间隔,也不会对当前帧图像的关键点检
测结果造成过大的影响,从而保证检测结果的稳定性和跟随性比较好。
[0066] 示例性的,本公开示例性实施例的历史帧图像中关键点的关键点信息可以为历史帧图像中关键点的初始位置,也可以为历史帧图像中关键点的检测结果。
[0067] 举例来说,当当前帧图像为第2帧图像,该历史帧图像中关键点的关键点信息可以为历史帧图像中该关键点的初始位置。当当前帧图像为第3帧图像,该历史帧图像中关键点
的关键点信息可以为在历史帧图像中关键点的初始位置,当然也可以为历史帧图像中关键
点的检测结果。可以理解的是,历史帧图像中关键点的检测结果可以是以历史帧图像为当
前帧图像时,采用本公开示例性的方法所获得的关键点的检测结果。
[0068] 示例性的,当视频图像含有人脸的视频图像,可以使用人脸检测网络对当前帧图像进行检测,然后对人脸图像进行关键点检测,从而获得人脸关键点检测结果。例如:可以
利用人脸检测网络检测当前帧图像,输出人脸图像。将人脸图像输出人脸关键点检测网络,
输出人脸关键点检测结果。该人脸关键点检测结果可以为人脸关键点的初始位置坐标,或
者可以表达人脸关键点的初始位置坐标的信息。
[0069] 示例性的,当上述光流跟踪特征是基于稠密光流图确定的光流跟踪特征。此时,光流跟踪特征的类型为稠密光流跟踪特征。当上述光流跟踪特征是基于稀疏光流图确定的光
流跟踪特征。此时,光流跟踪特征的类型为稀疏光流跟踪特征,可以减少计算开销,提高点
位跟踪及时性。该稀疏光流跟踪特征可以是采用Lucas‑Kanade光流算法确定光流跟踪特
征,或者采用金字塔Lucas_Kanade光流法确定光流跟踪特征,但不仅限于此,具体可以根据
实际情况选择。
[0070] 对于物体运动速度比较慢的视频图像,可以选择Lucas‑Kanade光流算法或金字塔Lucas_Kanade光流法确定光流跟踪特征。对于物体运动速度比较快的视频图像,可以选择
金字塔Lucas_Kanade光流法确定光流跟踪特征,以克服Lucas‑Kanade光流算法不适用于物
体运动速度比较慢的视频图像的问题。
[0071] 为了保证可能与初始位置进行融合的光流跟踪特征在历史帧图像和当前帧图像的位置变化符合视频图像在时序上的目标位置变化规律,还可以通过距离约束的方式,确
定当前帧图像的同一关键点的光流跟踪特征与初始位置融合的可行性。在此基础上,在服
务器执行步骤301后,本公开示例性实施例的方法还包括:
[0072] 步骤302:基于光流跟踪特征和历史帧图像中关键点的关键点信息,确定当前帧图像中关键点的帧间移动参数。应理解,帧间可以是针对历史帧图像和当前帧图像而言的帧
间。
[0073] 示例性的,本公开示例性实施例的方法中,确定当前帧图像中关键点的帧间移动参数时,其所涉及的光流跟踪特征针对的当前帧图像的部位与历史帧图像中的关键点信息
所针对的历史帧图像的部位相同。
[0074] 示例性的,上述光流跟踪特征可以包括当前帧图像中关键点的光流跟踪点坐标,因此,当上述光流跟踪特征为正向光流跟踪特征,该正向光流跟踪特征实质是当前帧图像
的光流跟踪点坐标。上述初始位置可以为关键点检测网络所检测的关键点检测坐标。在此
基础上,可以采用衡量两个点之间距离的度量参数作为帧间移动参数。例如:可以以欧式距
离度量帧间移动参数,该帧间移动参数可以表征该关键点在历史帧图像与当前帧图像的位
置变化情况,其帧间移动参数满足下式:
[0075] ;
[0076] 表示第t帧图像到第k帧图像中第j个关键点的帧间移动距离,即第k帧图像的第j个关键点的帧间移动距离, 表示第k帧图像中第j个关键点的
正向光流跟踪位置横坐标, 表示第k帧图像中第j个关键点的正向光流跟踪
位置纵坐标, 表示第t帧图像中第j个关键点的关键点检测横坐标, 表示第
t帧图像中第j个关键点的关键点检测纵坐标,第t帧图像为历史帧图像,第k帧图像为当前
帧图像。
[0077] 步骤303:判断光流跟踪特征是否至少满足距离约束条件,如果光流跟踪特征至少满足距离约束条件,则确定光流跟踪特征对应的关键点满足融合要求,可以与初始位置进
行融合,执行步骤304,否则执行步骤305。
[0078] 上述距离约束条件可以至少包括帧间距离约束条件,该帧间距离约束条件可以为帧间移动参数不大于预设帧间移动阈值。当光流跟踪特征满足帧间移动参数不大于预设帧
间移动阈值,说明历史帧图像和当前帧图像的关键点位置在时序上的变化符合视频图像中
关键点的变化规律。预设帧间移动阈值可以为经验值,也可以考虑实际因素。
[0079] 示例性的,上述预设帧间移动阈值可以为当关键点检测结果不发生抖动时,关键点在帧间的最大可接受移动距离。基于此,在帧间移动参数距离不大于预设帧间移动阈值
时,说明可以融合当前图像帧中该关键点的光流跟踪特征与初始位置,从而提高关键点检
测结果的稳定性,降低关键点的抖动。基于此,在帧间移动参数距离不大于预设帧间移动阈
值时,执行步骤304,否则执行步骤305。
[0080] 在一种示例中,上述预设帧间移动阈值与目标物体在当前帧图像的面积占比正相关。此时,当预设帧间移动阈值实质考虑到当前帧图像的尺寸对预设帧间移动阈值的影响,
使得所设定的预设帧间移动阈值随着标物体的尺寸在当前帧图像的面积占比的变化而变
化,因此,本公开示例性实施例的方法可以适用于各种尺寸的视频图像的关键点检测。同
时,为了保证预设帧间移动阈值与帧间移动参数具有可比性,该预设帧间移动阈值与第一
转换因子呈正相关,该第一转换因子用于将面积占比转换为预设帧间移动阈值。
[0081] 示例性的,上述目标物体的面积可以为目标物体的外接框面积,外接框可以为最小外接框。例如:外接框面积可以由属于目标物体的多个关键点中的至少两个关键点的初
始位置确定。预设帧间移动阈值可以满足第一阈值公式。该第一阈值公式可以为:
[0082] ;
[0083] Thresh1表示当前帧图像中关键点的预设帧间移动阈值,又称第一归一化因子,ATIMw表示属于目标物体的多个关键点在宽度方向的最大跨度, 表示属于目标物体的多
个关键点在高度方向的最大跨度,imagew表示当前帧图像的宽,imageh表示当前帧图像的
高。L1表示第一转换因子,其可以为根据实际情况设定,例如L1可以取100。
[0084] 以第k帧图像为例:
[0085] ,
[0086] 。
[0087] 其中, 表示第k帧图像的属于目标物体的关键点的横坐标最大值的运算符号, 表示第k帧图像的属于目标物体的关键点的纵坐标最大值的运算符号,
为第k帧图像的属于目标物体的关键点的横坐标, 为第k帧图像的
属于目标物体的关键点的纵坐标, 表示取绝对值的运算符号,imagew表示第k帧图
像的宽度,imageh表示第k帧图像的高度。
[0088] 图4示出了本公开示例性实施例的人脸关键点的初始位置示意图。如图4所示,以图4从左到右的方向为横坐标轴正方向,以图4从下向上的方向为纵坐标轴正方向。该人脸
一共有68个关键点,最左端关键点401的横坐标为属于人脸的关键点中横坐标最小值,最右
端关键点402的横坐标为属于人脸的关键点的横坐标最大值,因此,最右端关键点402的横
坐标与最左端关键点401的横坐标的差值绝对值为人脸的宽。最上端关键点403的纵坐标为
属于人脸的关键点的纵坐标最大值,最下端关键点404的纵坐标为属于人脸的关键点的纵
坐标最小值,因此,最上端关键点403的纵坐标与最下端关键点404的纵坐标的差值绝对值
为人脸的高。
[0089] 由上可知,对于当前帧图像来说,可以使用相同的预设帧间移动阈值确定属于目标物体的所有关键点的帧间移动参数是否符合关键点在帧间的位置变化规律。例如:针对
属于目标物体的一个关键点来说,由于视频图像的每帧图像播放时长达到毫秒级别,因此,
关键点在帧间(历史帧图像和当前帧图像)的目标位置变化极小。基于此,若帧间移动参数
小于或等于预设帧间移动阈值,则说明在历史帧图像和当前帧图像的关键点位置变化符合
关键点在帧间的位置变化规律,可以执行步骤304,否则,说明在历史帧图像和当前帧图像
的关键点变化不符合关键点在帧间的位置变化规律,该关键点的光流跟踪特征与该关键点
的初始位置融合的可行性不高,因此,该关键点的光流跟踪特征不参与步骤304的操作,可
以执行步骤305。
[0090] 针对当前帧图像,为了保证采用光流跟踪方式所确定的光流跟踪特征和关键点检测技术所确定的初始位置不发生较大的偏移,还可以进一步通过距离约束条件约束当前帧
图像的该关键点的光流跟踪特征与该关键点的初始位置的偏移量。基于此,上述距离约束
条件还可以包括帧内距离约束条件。该帧内距离约束条件可以包括当前帧图像中关键点的
帧内偏移参数不大于预设帧内偏移阈值,其中,帧内偏移参数由当前帧图像中关键点的初
始位置和光流跟踪特征确定。该预设帧内偏移阈值可以为经验值,也可以考虑实际因素。
[0091] 在实际应用中,服务器可以先基于当前帧图像中关键点的初始位置和光流跟踪特征确定当前帧图像中关键点的帧内偏移参数,然后判断该帧内偏移参数是否不大于预设帧
内偏移阈值。
[0092] 当服务器确定帧内距离约束条件成立的情况下,说明采用光流跟踪方式所确定的光流跟踪特征和关键点检测技术所确定的初始位置的偏移量在合理的范围内。基于此,当
服务器确定帧内距离约束条件和帧内距离约束条件成立的情况下,可以执行步骤304,以保
证关键点检测结果的连续性和准确性。当服务器确定帧间距离约束条件不成立,帧内距离
约束条件成立,或者帧间距离约束条件和帧内距离约束条件均不成立的情况下,可以执行
步骤304。
[0093] 示例性的,可以采用衡量两个点之间距离的度量参数作为帧内偏移参数。例如:可以以欧式距离度量帧内偏移参数,该帧内偏移参数可以表征当前帧图像中该关键点的初始
位置和光流跟踪点的偏移程度,其满足下式:
[0094] 。
[0095] 表示第k帧图像中第j个关键点的帧内偏移距离, 表示第k帧图像中第j个关键点的正向光流跟踪位置横坐标, 表示第k帧图像中第j
个关键点的正向光流跟踪位置纵坐标, 表示第k帧图像中第j个关键点的初始位置
横坐标, 表示第k帧图像中第j个关键点的初始位置纵坐标,第t帧图像为历史帧图
像,第k帧图像为当前帧图像。
[0096] 示例性的,上述预设帧内偏移阈值可以为关键点在一个视频帧图像的最大可接受偏移距离。基于此,如果该关键点的帧内偏移参数大于预设帧内移动阈值,则说明该关键点
的初始位置和光流跟踪特征在帧内偏移过大,已经不可以被用户视觉忽略,二者进行融合,
有可能影响最终关键点检测结果的准确性,如果关键点的帧内偏移参数小于或等于预设帧
内移动阈值,则说明关键点的初始位置和光流跟踪特征在帧内的偏移可以被用户视觉忽
略,二者进行融合,可以提高最终关键点检测结果的准确性。
[0097] 在一种示例中,上述预设帧内偏移阈值可以与目标物体在当前帧图像的面积占比正相关。该目标物体的面积定义可以参考前文相关描述,此处不做详述。
[0098] 在实际应用中,当面积占比越大,当前帧图像中关键点的初始位置和光流跟踪特征的偏移比较大,而面积占比越小,当前帧图像中关键点的初始位置和光流跟踪特征的偏
移比较小。基于此,本公开示例性实施例的预设帧内偏移阈值考虑到面积占比对于初始位
置和光流跟踪特征的位置影响,使得在面积占比较大的情况下,预设帧内偏移阈值相对增
大,从而增加对于当前帧内偏移程度的容忍度,保证当前帧图像中更多关键点的帧内偏移
参数不大于预设帧内偏移阈值时,这些关键点的初始位置和光流跟踪特征融合后,不会影
响关键点的检测准确性。基于此,本公开示例性实施例的方法可以适应不同尺寸的当前帧
图像,确保融合后的关键点位置准确。同时,为了保证当前偏移阈值与当前帧内移动参数有
可比性,该预设帧内偏移阈值与第二转换因子正相关,该第二转换因子用于将面积占比转
换为预设帧内偏移阈值。
[0099] 示例性的,上述目标物体的面积可以为目标物体的外接框面积,外接框可以为最小外接框。例如:外接框面积可以由属于目标物体的多个关键点中的至少两个关键点的初
始位置确定。预设帧内偏移阈值可以满足第二阈值公式。该第二阈值公式可以为:
[0100] 。
[0101] Thresh2表示当前帧图像中关键点的预设帧内偏移阈值,又称第二归一化因子,ATIMw表示属于目标物体的多个关键点在宽度方向的最大跨度,ATIMh表示属于目标物体的
多个关键点在高度方向的最大跨度,imagew表示当前帧图像的宽,imageh表示当前帧图像的
高。 和 的定义可以参考前文,此处不做赘述。
[0102] L2表示第二转换因子,其可以为根据实际情况设定,例如L2可以取100,或者根据实际情况确定。应理解,第一转换因子和第二转换因子可以相同,也可以不同。当第一转换
因子和第二转换因子相同时,预设帧间移动阈值等于预设帧内偏移阈值。当第一转换因子
与第二转换因子不同时,预设帧间移动阈值不等于预设帧内偏移阈值。例如:第一转换因子
大于第二转换因子不同时,预设帧间移动阈值大于预设帧内偏移阈值,以保证最后融合后
的关键点位置准确。
[0103] 需要说明的是,对于不同帧图像来说,不同帧图像中对应同一部分的关键点的初始位置和光流跟踪特征有所变化,因此,预设帧间移动阈值、预设帧内偏移阈值、帧间移动
参数和帧内偏移参数均随着所检测的图像帧不同而发生动态变化。同时,不管利用预设帧
间移动阈值约束关键点在帧间的位置变化程度,还是利用预设帧内偏移阈值约束关键点在
帧内的位置偏移程度,都是一种动态约束的过程。基于此,本公开示例性实施例的方法可以
采用动态距离匹配的方式,将关键点的光流跟踪特征与该关键点的初始位置进行匹配。
[0104] 步骤304:基于当前帧图像中关键点的初始位置和光流跟踪特征,确定当前帧图像中关键点的检测结果。
[0105] 针对目标物体的所有关键点,可以根据检测精确度选择性的执行距离约束条件,以约束关键点帧间移动参数,也可以对关键点的帧内偏移参数,从而筛选出可以进行融合
的关键点的光流跟踪特征和初始位置。
[0106] 在实际应用中,可以采用加权法对同一关键点的初始位置和光流跟踪特征进行融合,获得相应关键点在当前帧图像的检测结果。例如:当前帧图像含有目标物体,该目标物
体包括至少一个部位,同一部位可以包括至少两个关键点。在当前帧图像中,可以基于关键
点所属部位的所有关键点的帧间移动参数以及预设帧间移动阈值,确定关键点在当前帧图
像的初始位置权重和光流跟踪特征权重,然后基于初始位置的权重和光流跟踪特征的权
重,对当前帧图像中关键点的初始位置和光流跟踪特征进行加权,以确定当前帧图像中关
键点的检测结果。
[0107] 示例性的,至于初始位置的权重和光流跟踪特征的权重大小,可以根据实际情况选择。应理解,初始位置的权重和光流跟踪特征的权重之和可以等于1。例如:当前帧图像中
关键点的检测结果满足如下公式:
[0108] 。
[0109] 其中, 表示第k帧图像中属于第i个部位的第j个关键点的检测结果; 表示第k帧图像中属于第i个部位的第
j个关键点的正向光流跟踪特征, 表示第k帧图像中属于第i个部位
的第j个关键点的初始位置, 表示属于目标物体的第i个部位的第j个关键点的光流
跟踪特征的权重, 表示属于目标物体的第i个部位的第j个关键点的初始位
置的权重。第k帧图像为当前帧图像,第t帧图像为历史帧图像。
[0110] 示例性的,针对属于同一部位的每个关键点,初始位置的权重与当前帧图像中关键点所属部位的所有关键点的帧间移动参数的平均值正相关,光流跟踪特征权重与当前帧
图像中关键点所属部位的所有关键点的帧间移动参数的平均值负相关。而由于不同帧图像
的关键点的初始位置和光流跟踪特征均有所变化,因此,初始位置的权重和光流跟踪特征
的权重在不同帧图像是一种动态权重,使得同一关键点在不同时刻的初始位置和光流跟踪
特征融合方式是动态融合,从而符合关键点在不同时刻的位置变化规律,提高不同时刻关
键点检测准确度。
[0111] 由上可见,对于当前帧图像来说,在关键点所属部位所有的关键点的帧间移动参数的平均值越小的情况下,光流跟踪特征的权重越大,初始位置的权重越小。可见,关键点
的帧间移动参数的平均值越小,关键点的帧间移动参数越符合视频图像中关键点的位置变
化规律。基于此,可以约束初始位置的权重和光流跟踪特征的权重,增强准确度更高的光流
跟踪特征影响检测结果的能力,从而获得稳定性和连续性比较好的检测结果。
[0112] 示例性的,对于同一帧图像(如当前帧图像)来说,当前帧图像中属于同一部位的各个关键点的初始位置的权重相同,属于目标物体中同一部位的各个关键点的光流跟踪特
征权重相同。也就是说,当该部位有7个关键点,7个关键点的初始位置的权重相同,7个关键
点的光流跟踪特征的权重相同。此时,可以保证相同部位的关键点融合时,初始位置的权重
和光流跟踪特征的权重均具有一致性,从而符合同一帧图像中属于同一部位的关键点的位
置分布规律。
[0113] 示例性的,上述光流跟踪特征的权重满足:
[0114] , 表示当前帧图像中属于目标物体的第i个部位的第j个关键点的光流跟踪特征的权重, 表示求平均函数;
表示目标物体的第i个部位的所有关键点的帧间移动参数的平均值,
parti表示属于目标物体的第i个部位,Thresh1表示预设帧间移动阈值,i表示部位的索引,
i表示大于或等于1且小于或等于K的整数,K为目标物体所含有的部位总数。
[0115] 以人脸关键点检测为例,K=7,这些部位可以包括鼻子、嘴巴、轮廓、左眼睛、右眼睛、左眉毛和右眉毛。j为关键点索引,j为大于或等于1且小于或等于Q的整数,Q为属于目标
物体的关键点总数。
[0116] 步骤305:将当前帧图像中关键点的初始位置确定为关键点的检测结果。应理解,当以第t帧图像作为历史帧图像,第k帧图像作为当前帧图像,若第t帧图像中关键点的初始
位置和光流跟踪特征没有经过融合,帧间移动参数所引入的历史帧图像的关键点的关键信
息可以为第t帧图像中关键点的初始位置。
[0117] 在一种可选方式中,上述光流跟踪特征不仅可以包括当前帧图像中关键点的光流跟踪点坐标,还可以包括当前帧图像中关键点的光流跟踪状态。此时,除了可以采用距离约
束条件约束与初始位置融合的关键点的光流跟踪特征。在此基础上,图5示出了本公开示例
性实施例的另一种方法的流程示意图。如图5所示,该方法包括:
[0118] 步骤501:提取当前帧图像中关键点的初始位置和光流跟踪特征,具体内容可以参考步骤301。
[0119] 步骤502:判断光流跟踪特征是否满足跟踪状态约束条件和距离约束条件。当光流跟踪特征满足跟踪状态约束条件和距离约束条件,说明光流跟踪特征可以与初始位置融
合,可以执行步骤503,否则执行步骤504。
[0120] 在实际应用中,服务器判断光流跟踪特征是否满足跟踪状态约束条件和是否满足距离约束条件,可以是同时执行,也可以异步执行。当异步执行时,服务器可以先判断光流
跟踪特征是否满足跟踪状态约束条件,再判断光流跟踪特征是否满足距离约束条件;当然,
服务器可以先判断光流跟踪特征是否满足距离约束条件,再判断光流跟踪特征是否满足跟
踪状态约束条件。其中,服务器判断光流跟踪特征是否满足距离约束条件的相关描述,可以
参考前文的步骤302和步骤303的相关描述,此处不做赘述。下面主要描述服务器判断光流
跟踪特征是否满足跟踪状态约束条件的过程。
[0121] 上述跟踪状态约束条件为光流跟踪特征的跟踪状态为跟踪成功状态。如果光流跟踪特征满足跟踪状态约束条件,则说明光流跟踪特征的跟踪状态为跟踪成功状态,否则说
明光流跟踪特征的跟踪状态为跟踪失败状态。
[0122] 在一种示例中,当光流跟踪特征为正向光流跟踪特征,光流跟踪特征的跟踪状态可以包括光流跟踪特征的正向跟踪状态,以利用光流跟踪特征的正向跟踪状态确定该关键
点的光流跟踪特征是否满足跟踪状态约束条件,以确定该光流跟踪特征是否可能与初始位
置进行融合。应理解,当光流跟踪特征的正向跟踪状态,跟踪成功状态可以为正向跟踪成功
状态。当光流跟踪特征的正向跟踪状态为正向跟踪成功状态,说明光流跟踪特征满足跟踪
状态约束条件。
[0123] 在另一种示例中,当光流跟踪特征为正向光流跟踪特征,光流跟踪特征的跟踪状态可以包括光流跟踪特征的正向跟踪状态和反向跟踪状态。此时,跟踪成功状态可以为正
向跟踪成功状态和反向跟踪成功状态。当光流跟踪特征的正向跟踪状态为正向跟踪成功状
态,光流跟踪特征的反向跟踪状态为反向跟踪成功状态,说明光流跟踪特征满足跟踪状态
约束条件。
[0124] 在此基础上,可以同时利用正向跟踪状态和反向跟踪状态,确定该关键点的正向光流跟踪特征是否满足跟踪状态约束条件,以确定该光流跟踪特征是否可能与初始位置进
行融合。这种确定方式可以看作利用正向跟踪状态和反向跟踪状态匹配初始位置的过程,
可以提高关键点的检测结果准确性。
[0125] 例如:当选择金字塔Lucas_Kanade光流法确定光流跟踪特征,光流正向跟踪点坐标第t帧到第k帧,j,正向跟踪状态第t帧到第k帧,j =PyrLK(第t帧图像,第k帧图像,第t帧图像中第j个关
键点的坐标);光流反向跟踪点坐标第k帧到第t帧,j,反向跟踪状态第k帧到第t帧,j=PyrLK(第k帧图像,
第t帧图像,第k帧图像中第j个关键点的坐标),其中,j表示关键点的索引号,j表示大于或
等于1,小于或等于M整数,t和k的定义参考前文,k‑t≥1。
[0126] 其中,PyrLK表示金字塔Lucas_Kanade算法,其可以是相关技术中的金字塔Lucas_Kanade算法,可以通过OpenCV或其它工具执行该算法;j表示关键点的索引号,j为大于或等
于1,小于或等于M整数;第k帧图像为当前帧图像,第t帧图像为历史帧图像,k‑t≥1。若t=1,
第t帧图像的关键点位置坐标为第t帧图像中关键点的初始位置坐标,若t为大于或等于2的
整数,则第t帧图像的关键点位置坐标为采用本公开示例性方法所确定的关键点的检测结
果坐标,也可以是第t帧图像中关键点的初始位置坐标。
[0127] 在此基础上,可以判断第k帧图像中第j个关键点的正向跟踪状态第t帧到第k帧,j是否为正向跟踪成功状态,以确定第j个关键点的光流正向跟踪点坐标第t帧到第k帧,j是否可能与第j个
关键点的初始位置坐标进行融合,也可以判断第k帧图像中第j个关键点的正向跟踪状
态第t帧到第k帧,j是否为正向跟踪成功状态的同时,判断第k帧图像中第j个关键点的反向跟踪状
态第k帧到第t帧,j是否为反向跟踪成功状态的,以确定第j个关键点的当前光流正向跟踪点坐
标第t帧到第k帧,j是否可能与第j个关键点的初始位置进行融合。
[0128] 需要说明的是,本公开示例性实施例提供的两种方法中,前一种方法可以在距离约束条件下确定光流跟踪特征是否可以与初始位置进行融合,而后一种方法可以在距离约
束条件和跟踪状态约束条件下确定光流跟踪特征是否可以与初始位置进行融合。相对后一
种方法,前一种方法可以减少不必要的计算量,降低对硬件的要求。
[0129] 步骤503:基于当前帧图像中关键点的初始位置和光流跟踪特征,确定当前帧图像中关键点的检测结果,具体内容可以参考步骤304。
[0130] 步骤504:将当前帧图像中关键点的初始位置确定为关键点的检测结果,具体内容可以参考步骤305。
[0131] 为了清楚的描述本公开示例性实施例的方法,下面以含有人脸的视频图像为例,结合附图描述本公开示例性实施例的方法。应理解,下述方法可以参考前文相关描述和公
式之处,不做细述。
[0132] 图6示出了本公开示例性实施例的人脸关键点的检测方法的示例流程图。如图6所示,本公开示例性实施例的另一种方法包括:
[0133] 步骤601:利用人脸检测模型对当前帧图像进行人脸检测,获得人脸图像,将人脸图像输入人脸关键点检测模型中,获得关键点的初始位置。
[0134] 步骤602:利用基于金字塔Lucas_Kanade算法的光流跟踪器计算当前帧图像中关键点的正向光流跟踪特征和当前帧图像中关键点的反向光流跟踪特征。正向光流跟踪特征
包括正向光流跟踪点坐标和正向跟踪状态,反向光流跟踪特征可以包括反向光流跟踪点坐
标和反向跟踪状态。
[0135] 步骤603:判断正向光流跟踪特征的跟踪状态是否为正向跟踪成功状态,且反向光流跟踪特征的跟踪状态是否为反向跟踪成功状态,如果正向光流跟踪特征的跟踪状态为正
向跟踪成功状态,且反向光流跟踪特征的跟踪状态为反向跟踪成功状态,则说明关键点的
正向光流跟踪特征有可能与关键点的初始位置融合,可以执行步骤604,否则执行步骤608。
跟踪状态约束条件满足:
[0136] 。
[0137] 其中, 为当前图像帧中第j个关键点的跟踪状态,1表示跟踪成功状态,0表示跟踪失败状态。当第j个关键点的正向跟踪状态和反向跟踪状态均为跟踪成功状态时,可
以确定第k帧图像中第j个关键点的光流跟踪特征和初始位置存在可以融合的可能,否则,
执行步骤608。应理解,第k帧为当前帧,第k‑1帧为前一帧。
[0138] 步骤604:利用前一帧图像中关键点的关键点信息和当前帧图像中关键点的正向光流跟踪特征,确定当前帧图像中关键点的帧间移动参数。
[0139] 例如:可以利用前一帧图像中第j个关键点的关键点信息和当前帧图像中第j个关键点的正向光流跟踪点坐标,确定当前帧图像中第j个关键点的帧间移动参数,确定方式可
以参考前文的相关描述。若当前帧图像为第k帧图像,则前一帧图像可以示例的为第k‑1帧
图像。
[0140] 步骤605:利用当前帧图像中关键点的初始位置和正向光流跟踪特征确定关键点的帧内偏移参数。例如:可以利用当前帧图像中第j个关键点的厨师位置和当前帧图像中第
j个关键点的正向光流跟踪点坐标,确定当前帧图像中第j个关键点的帧内移动参数。应理
解,步骤604和步骤605可以同时执行,也可以依序执行。
[0141] 步骤606:判断正向光流跟踪特征是否满足距离约束条件。如果是,执行步骤607,否则,执行步骤608。
[0142] 上述距离约束条件可以包括帧间移动参数不大于预设帧间移动阈值,且帧内偏移参数不大于预设帧内偏移阈值。预设帧间移动阈值和预设帧内偏移阈值可以使用相同的阈
值,也可以使用不同的阈值,可以参考前文,此处不做赘述。
[0143] 假设将人脸的关键点可以属于人脸的7个部位,分别为左眉毛、右眉毛、左眼睛、右眼睛、鼻子、嘴巴和脸部轮廓。对于第j关键点来说,其属于人脸的某个部位part(i Valid1,
Valid2,Valid3,Valid4,Valid5,Valid6或Valid7)。
[0144] Valid1以表示正向光流跟踪特征满足距离约束条件的当前帧图像中属于左眉毛的关键点,Valid2以表示正向光流跟踪特征满足距离约束条件的当前帧图像中属于右眉毛
的关键点的正向光流跟踪特征,Valid3可以表示正向光流跟踪特征满足距离约束条件的当
前帧图像中属于左眼睛的关键点,Valid4可以表示正向光流跟踪特征满足距离约束条件的
当前帧图像中属于右眼睛的关键点,Valid5可以表示正向光流跟踪特征满足距离约束条件
的当前帧图像中属于鼻子的关键点,Valid6可以表示正向光流跟踪特征满足距离约束条件
的当前帧图像中属于嘴巴的关键点,Valid7可以表示正向光流跟踪特征满足距离约束条件
的当前帧图像中属于轮廓的关键点。
[0145] 对于正向光流跟踪特征满足距离约束条件的当前帧图像中第j个关键点来说:
[0146] n表示属于人脸的关键点总数量,i表示大于或等于1且小于或等于7的整数, 表示前一帧图像到当前帧
图像中第j个关键点的帧间移动距离, 表示当前帧图像中第j个关键点的帧内偏移距
离。 表示当前帧图像中第j个关键点的跟踪状态。
[0147] 步骤607:基于当前帧图像的关键点的初始位置和正向光流跟踪特征,确定当前帧图像中关键点的检测结果。例如:可以采用加权方式将当前帧图像的关键点的初始位置坐
标和正向光流跟踪点坐标加权,获得当前帧图像中关键点的检测结果。初始位置的权重和
正向光流跟踪特征的权重可以参考前文,此处不做赘述。
[0148] 步骤608:将当前帧图像中关键点初始位置确定为当前帧图像中关键点的检测结果。
[0149] 本公开实施例中提供的一个或多个技术方案,提取当前帧图像中关键点的初始位置和光流跟踪特征后,可以基于光流跟踪特征和历史帧图像中关键点的关键点信息,从而
确定当前图像中关键点的帧间移动参数。当光流跟踪特征至少满足帧间移动参数不大于预
设帧间移动阈值这一距离约束条件的情况下,说明该历史帧图像和当前帧图像中关键点的
移动距离在可接受范围内。在此基础上,基于关键点在当前帧图像中的初始位置和光流跟
踪特征,所确定当前帧图像中关键点的检测结果可以保证视频图像的关键点检测结果连续
性和稳定性比较好,因此,本公开实施例可以降低视频图像的关键点检测抖动,从而支持
“后置”应用的要求。另外,本公开示例性实施例将关键点的初始位置和相应光流跟踪特征,
使得关键点位置跟随及时,不会出现关键点的拖动的问题。
[0150] 上述主要从服务器的角度对本公开实施例提供的方案进行了介绍。可以理解的是,服务器为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本
领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法
步骤,本公开能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还
是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业
技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应
认为超出本公开的范围。
[0151] 本公开实施例可以根据上述方法示例对服务器进行功能单元的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块
中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需
要说明的是,本公开实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实
现时可以有另外的划分方式。
[0152] 在采用对应各个功能划分各个功能模块的情况下,本公开示例性实施例提供一种关键点检测装置,该关键点检测装置可以为服务器或应用于服务器的芯片。图7示出了根据
本公开示例性实施例的关键点检测装置的功能模块示意性框图。如图7所示,该关键点检测
装置包括:
[0153] 提取模块701,用于提取当前帧图像中关键点的初始位置和光流跟踪特征;
[0154] 确定模块702,用于基于光流跟踪特征和历史帧图像中关键点的关键点信息,确定当前帧图像中关键点的帧间移动参数;
[0155] 融合模块703,用于在光流跟踪特征至少满足距离约束条件时,基于当前帧图像中关键点的初始位置和光流跟踪特征,确定当前帧图像中关键点的检测结果,其中,距离约束
条件至少包括帧间移动参数不大于预设帧间移动阈值。
[0156] 在一种可能的实现方式中,距离约束条件还包括当前帧图像中关键点的帧内偏移参数不大于预设帧内偏移阈值,其中,帧内偏移参数由当前帧图像中关键点的初始位置和
光流跟踪特征确定。
[0157] 在一种可能的实现方式中,当前帧图像含有目标物体。预设帧间移动阈值与目标物体在当前帧图像的面积占比正相关,预设帧间移动阈值与第一转换因子正相关;
[0158] 目标物体的面积为目标物体的外接框面积,目标物体的外接框面积由属于目标物体的多个关键点中的至少两个关键点确定。
[0159] 在一种可能的实现方式中,预设帧间移动阈值满足第一阈值公式:
[0160] ;
[0161] 其中,Thresh1表示预设帧间移动阈值,ATIMw表示属于目标物体的多个关键点在宽度方向的最大跨度,ATIMh表示属于目标物体的多个关键点在高度方向的最大跨度,
imagew表示当前帧图像的宽,imageh表示当前帧图像的高,L1表示第一转换因子。
[0162] 在一种可能的实现方式中,当前帧图像含有目标物体。预设帧内偏移阈值与目标物体在当前帧图像的面积占比正相关,预设帧内偏移阈值与第二转换因子正相关。目标物
体的面积为目标物体的外接框面积,目标物体的外接框面积由属于目标物体的多个关键点
中的至少两个关键点的初始位置确定。
[0163] 在一种可能的实现方式中,预设帧内偏移阈值满足第二阈值公式:
[0164] ;
[0165] 其中,Thresh2表示预设帧内偏移阈值,ATIMw表示属于目标物体的多个关键点在宽度方向的最大跨度,ATIMh表示属于目标物体的多个关键点在高度方向的最大跨度,
imagew表示当前帧图像的宽,imageh表示当前帧图像的高,L2表示第二转换因子。
[0166] 在一种可能的实现方式中,融合模块703还用于:响应于确定光流跟踪特征满足跟踪状态约束条件,基于当前帧图像中关键点的初始位置和光流跟踪特征,确定当前帧图像
中关键点的检测结果,其中,跟踪状态约束条件为光流跟踪特征的跟踪状态为跟踪成功状
态。
[0167] 在一种可能的实现方式中,当前帧图像含有目标物体,目标物体包括至少一个部位,同一部位中包括有至少两个关键点。融合模块703还用于:基于关键点所属部位的所有
关键点在当前帧图像的帧间移动参数以及预设帧间移动阈值,获得关键点在当前帧图像的
初始位置权重和光流跟踪特征权重;基于初始位置权重和光流跟踪特征权重,对当前帧图
像中关键点的初始位置和光流跟踪特征进行加权,以确定当前帧图像中关键点的检测结
果。
[0168] 在一种可能的实现方式中,初始位置权重与当前帧图像中关键点所属部位的所有关键点的帧间移动参数的平均值正相关,光流跟踪特征权重与当前帧图像中关键点所属部
位的所有关键点的帧间移动参数的平均值负相关。
[0169] 当前帧图像中属于目标物体中同一部位的各个关键点的初始位置权重相同,属于目标物体中同一部位的各个关键点的光流跟踪特征权重相同。
[0170] 在一种可能的实现方式中,光流跟踪特征权重满足:
[0171] ;
[0172] 其中, 表示当前帧图像中属于目标物体的第i个部位中第j个关键点的光流跟踪特征权重, 表示目标物体的第i个部位的所有关键点的帧间
移动参数的平均值,parti表示目标物体的第i个部位,i表示不小于1且不大于K的整数,j表
示不小于1且不大于Q的整数,K表示目标物体所含有的部位总数,Q表示目标物体包括的关
键点总数,Thresh1表示预设帧间移动阈值。
[0173] 在一种可能的实现方式中,历史帧图像与当前帧图像的显示顺序相邻,或历史帧图像与当前帧图像的显示顺序不相邻。
[0174] 在一种可能的实现方式中,关键点信息为历史帧图像中关键点的初始位置;或关键点信息为历史帧图像中关键点的检测结果。
[0175] 在一种可能的实现方式中,光流跟踪特征为正向光流跟踪特征,光流跟踪特征的跟踪状态包括正向跟踪状态;或光流跟踪特征包括正向光流跟踪特征,光流跟踪特征的跟
踪状态包括正向跟踪状态和反向跟踪状态。
[0176] 在一种可能的实现方式中,提取模块701用于采用关键点检测技术确定当前帧图像中关键点的初始位置,基于当前帧图像、历史帧图像以及历史帧图像中关键点的关键点
信息,确定当前帧图像中关键点的光流跟踪特征。
[0177] 图8示出了根据本公开示例性实施例的芯片的示意性框图。如图8所示,该芯片800包括一个或两个以上(包括两个)处理器801和通信接口802。通信接口802可以支持服务器
执行上述关键点检测方法中的数据收发步骤,处理器801可以支持服务器执行上述关键点
检测方法中的数据处理步骤。
[0178] 可选的,如图8所示,该芯片800还包括存储器803,存储器803可以包括只读存储器和随机存取存储器,并向处理器提供操作指令和数据。存储器的一部分还可以包括非易失
性随机存取存储器(non‑volatile random access memory,NVRAM)。
[0179] 在一些实施方式中,如图8所示,处理器801通过调用存储器存储的操作指令(该操作指令可存储在操作系统中),执行相应的操作。处理器801控制终端设备中任一个的处理
操作,处理器还可以称为中央处理单元(central processing unit,CPU)。存储器803可以
包括只读存储器和随机存取存储器,并向处理器801提供指令和数据。存储器803的一部分
还可以包括NVRAM。例如应用中存储器、通信接口以及存储器通过总线系统耦合在一起,其
中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是
为了清楚说明起见,在图8中将各种总线都标为总线系统804。
[0180] 上述本公开实施例揭示的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通
过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处
理器、数字信号处理器(digital signal processing,DSP)、ASIC、现成可编程门阵列
(field‑programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻
辑器件、分立硬件组件。可以实现或者执行本公开实施例中的公开的各方法、步骤及逻辑框
图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本公开
实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器
中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可
编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储
介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
[0181] 本公开示例性实施例还提供一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器。所述存储器存储有能够被所述至少一个处理器执行的计算机
程序,所述计算机程序在被所述至少一个处理器执行时用于使所述电子设备执行根据本公
开实施例的方法。
[0182] 本公开示例性实施例还提供一种存储有计算机程序的非瞬时计算机可读存储介质,其中,所述计算机程序在被计算机的处理器执行时用于使所述计算机执行根据本公开
实施例的方法。
[0183] 本公开示例性实施例还提供一种计算机程序产品,包括计算机程序,其中,所述计算机程序在被计算机的处理器执行时用于使所述计算机执行根据本公开实施例的方法。
[0184] 参考图9,现将描述可以作为本公开的服务器或客户端的电子设备的结构框图,其是可以应用于本公开的各方面的硬件设备的示例。电子设备旨在表示各种形式的数字电子
的计算机设备,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服
务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,
个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、
它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者
要求的本公开的实现。
[0185] 如图9所示,电子设备900包括计算单元901,其可以根据存储在只读存储器(ROM)602中的计算机程序或者从存储单元908加载到随机访问存储器(RAM903)中的计算机程序,
来执行各种适当的动作和处理。在RAM903中,还可存储设备900操作所需的各种程序和数
据。计算单元901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出接口(I/O 605)也
连接至总线904。
[0186] 电子设备900中的多个部件连接至I/O接口905,包括:输入单元906、输出单元907、存储单元908以及通信单元909。输入单元906可以是能向电子设备900输入信息的任何类型
的设备,输入单元906可以接收输入的数字或字符信息,以及产生与电子设备的用户设置
和/或功能控制有关的键信号输入。输出单元907可以是能呈现信息的任何类型的设备,并
且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。存储单元
904可以包括但不限于磁盘、光盘。通信单元909允许电子设备900通过诸如因特网的计算机
网络和/或各种电信网络与其他设备交换信息/数据,并且可以包括但不限于调制解调器、
网卡、红外通信设备、无线通信收发机和/或芯片组,例如蓝牙TM设备、WiFi设备、WiMax设
备、蜂窝通信设备和/或类似物。
[0187] 计算单元901可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元901的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工
智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及
任何适当的处理器、控制器、微控制器等。计算单元901执行上文所描述的各个方法和处理。
例如,在一些实施例中,本公开示例性实施例的关键点检测方法可被实现为计算机软件程
序,其被有形地包含于机器可读介质,例如存储单元908。在一些实施例中,计算机程序的部
分或者全部可以经由ROM 902和/或通信单元909而被载入和/或安装到电子设备900上。在
一些实施例中,计算单元901可以通过其他任何适当的方式(例如,借助于固件)而被配置为
执行关键点检测方法。
[0188] 用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处
理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的
功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件
包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
[0189] 在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可
读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电
子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合
适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计
算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM
或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD‑ROM)、光学储存设备、磁储存设备、或
上述内容的任何合适组合。
[0190] 如本公开使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光
盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读
介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何
信号。
[0191] 为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视
器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来
将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的
反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用
任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
[0192] 可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算
系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界
面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部
件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数
字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网
(LAN)、广域网(WAN)和互联网。
[0193] 计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端‑服务器关系的计
算机程序来产生客户端和服务器的关系。
[0194] 在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序
产品包括一个或多个计算机程序或指令。在计算机上加载和执行所述计算机程序或指令
时,全部或部分地执行本公开实施例所述的流程或功能。所述计算机可以是通用计算机、专
用计算机、计算机网络、终端、用户设备或者其它可编程装置。所述计算机程序或指令可以
存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储
介质传输,例如,所述计算机程序或指令可以从一个网站站点、计算机、服务器或数据中心
通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机
可读存储介质可以是计算机能够存取的任何可用介质或者是集成一个或多个可用介质的
服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,例如,软盘、硬盘、磁带;
也可以是光介质,例如,数字视频光盘(digital video disc,DVD);还可以是半导体介质,
例如,固态硬盘(solid state drive,SSD)。
[0195] 尽管结合具体特征及其实施例对本公开进行了描述,显而易见的,在不脱离本公开的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是所
附权利要求所界定的本公开的示例性说明,且视为已覆盖本公开范围内的任意和所有修
改、变化、组合或等同物。显然,本领域的技术人员可以对本公开进行各种改动和变型而不
脱离本公开的精神和范围。这样,倘若本公开的这些修改和变型属于本公开权利要求及其
等同技术的范围之内,则本公开也意图包括这些改动和变型在内。