动作识别方法、装置、电子设备和存储介质与流程
未命名
09-10
阅读:70
评论:0

1.本公开涉及人工智能技术领域,尤其涉及目标检测、目标识别和动作识别等技术领域,可应用于视频处理场景下。更具体地,本公开提供了一种动作识别方法、装置、电子设备和存储介质。
背景技术:
2.随着人工智能技术的发展,可以利用智能设备来辅助各种业务的办理。
技术实现要素:
3.本公开提供了一种动作识别方法、装置、设备以及存储介质。
4.根据本公开的一方面,提供了一种动作识别方法,该方法包括:对多个第一图像帧进行检测,得到多个第一图像帧各自的多个手部关键点,其中,多个第一图像帧来自视频流数据的多个初始图像帧,第一图像帧包括手部;根据多个第一图像帧各自的多个手部关键点的位置,从多个第一图像帧中确定存在目标手势的多个第一目标图像帧;根据多个第一目标图像帧,确定目标手势的持续时长;响应于确定目标手势的持续时长大于或等于预设持续时长阈值,确定目标对象执行了目标动作。
5.根据本公开的另一方面,提供了一种动作识别装置,该装置包括:第一检测模块,用于对多个第一图像帧进行检测,得到多个第一图像帧各自的多个手部关键点,其中,多个第一图像帧来自视频流数据的多个初始图像帧,第一图像帧包括手部;第一确定模块,用于根据多个第一图像帧各自的多个手部关键点的位置,从多个第一图像帧中确定存在目标手势的多个第一目标图像帧;第二确定模块,用于根据多个第一目标图像帧,确定目标手势的持续时长;第三确定模块,用于响应于确定目标手势的持续时长大于或等于预设持续时长阈值,确定目标对象执行了目标动作。
6.根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行根据本公开提供的方法。
7.根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该计算机指令用于使计算机执行根据本公开提供的方法。
8.根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现根据本公开提供的方法。
9.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
10.附图用于更好地理解本方案,不构成对本公开的限定。其中:
11.图1是根据本公开的一个实施例的可以应用动作识别方法和装置的示例性系统架
构示意图;
12.图2是根据本公开的一个实施例的动作识别方法的流程图;
13.图3是根据本公开的一个实施例的多个手部关键点的示意图;
14.图4是根据本公开的一个实施例的手指的弯曲角度的示意图;
15.图5是根据本公开的一个实施例的第一图像帧的示意图;
16.图6是根据本公开的一个实施例的轻量级检测模型的示意图;
17.图7a是根据本公开的一个实施例的第二目标图像帧的示意图;
18.图7b是根据本公开的一个实施例的第二目标图像帧的在后图像帧的示意图;
19.图7c是根据本公开的一个实施例的确定检测框之间的距离的示意图;
20.图8是根据本公开的一个实施例的动作识别装置的框图;以及
21.图9是根据本公开的一个实施例的可以应用动作识别方法的电子设备的框图。
具体实施方式
22.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
23.在例如金融相关业务的办理过程中,客户可以在相关电子文档或纸质文档上签字,以确定业务相关方的权利及义务。在业务办理过程中,可以录制音频和视频,以便根据音频和视频来确定客户是否签字确认。然而,在视频或音频录制过程中,除了客户和工作人员之外,与客户要办理业务无关的其他人员的音频或图像也可能被采集。由此,为了准确地确定客户是否签字确认,可以利用人工来确定,导致业务办理的人力成本和时间成本难以降低。若利用人工智能技术来确定客户是否签字,其他人员的音频或图像可能会降低识别准确率,导致业务办理效率下降。
24.由此,本公开提供了一种动作识别方法,下面将进行详细说明。
25.图1是根据本公开一个实施例的可以应用动作识别方法和装置的示例性系统架构示意图。需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
26.如图1所示,根据该实施例的系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线和/或无线通信链路等等。
27.用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
28.服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。
29.需要说明的是,本公开实施例所提供的动作识别方法一般可以由服务器105执行。相应地,本公开实施例所提供的动作识别装置一般可以设置于服务器105中。本公开实施例所提供的动作识别方法也可以由不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的动作识别装置也可以设置于不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群中。
30.图2是根据本公开的一个实施例的动作识别方法的流程图。
31.如图2所示,该方法200可以包括操作s210至操作s240。
32.在操作s210,对多个第一图像帧进行检测,得到多个第一图像帧各自的多个手部关键点。
33.在本公开实施例中,多个第一图像帧可以来自视频流数据的多个初始图像帧。第一图像帧包括手部。例如,视频流数据可以来自相关业务场景。在业务办理过程中,可以进行视频录制,得到实时的视频流数据。对视频流数据进行抽帧,可以得到多个初始图像帧。在这些初始图像帧中,包括手部的初始图像帧可以作为第一图像帧。不包括手部的初始图像帧可以作为第二图像帧。
34.在本公开实施例中,手部可以是左手和右手的至少一个,也可以是形状或功能与手类似的义肢、机械手等,本公开对此不进行限制。
35.在本公开实施例中,可以利用各种方式对第一图像帧进行检测,得到多个手部关键点。手部关键点具有语义信息和位置信息。例如,一手部关键点的语义信息可以指示该关键点为手腕处的关键点。该手部关键点的位置信息可以包括坐标。
36.在操作s220,根据多个第一图像帧各自的多个手部关键点的位置,从多个第一图像帧中确定存在目标手势的多个第一目标图像帧。
37.在本公开实施例中,目标手势可以是用于确认业务相关内容的手势。例如,目标手势可以是签字手势。又例如,目标手势可以是盖章手势。
38.在本公开实施例中,可以根据多个手部关键点之间的相对位置关系,确定第一图像帧中是否存在目标手势。例如,若手腕处的关键点的高度大与手指上关键点的高度,可以确定相应第一图像帧中存在目标手势。可以理解,也可以基于其他方式,根据多个手部关键点的位置来确定第一图像帧中是否存在目标手势,本公开对此不进行限制。
39.在操作s230,根据多个第一目标图像帧,确定目标手势的持续时长。
40.在本公开实施例中,第一图像帧来自视频流数据。由此,每个第一图像帧可以对应一个时刻。根据多个时刻,可以确定目标手势的持续时长。
41.在操作s240,响应于确定目标手势的持续时长大于或等于预设持续时长阈值,确定目标对象执行了目标动作。
42.在本公开实施例中,目标对象可以是办理业务的客户。
43.在本公开实施例中,目标动作可以是用于确认业务相关内容的动作。例如,目标动作可以是签字动作。又例如,目标动作可以是盖章动作。
44.在本公开实施例中,预设持续时长阈值与视频流数据的时长对应。例如,视频流数据的时长越长,预设持续时长阈值可以越大。可以理解,确定相关内容需要消耗一定的时间,图像帧中出现目标手势是一个瞬时的手势。若该手势持续存在,可以确定目标对象执行
了目标动作。
45.通过本公开实施例,可以根据多个图像帧确定目标对象是否执行了目标动作,可以提高业务办理效率,也可以大幅降低业务办理的人力成本和时间成本。
46.可以理解,上文对本公开的方法进行了说明,下面将对视频流数据的多个初始图像帧进行说明。
47.在本公开实施例中,可以对视频流数据抽帧,得到多个初始图像帧。可以根据各种抽帧策略进行抽帧。
48.例如,可以利用快速前向活动图像专家组(ffmpeg)工具读取摄像头传输来的视频流,并进行抽帧,得到多个视频帧。多个视频帧可以包括关键帧(i帧)、单预测帧(p帧)和双向预测帧(b帧)。关键帧可以包括完整的图像信息。单预测帧可以利用在前的关键帧或在前单预测帧进行帧间预测编码。双向预测帧可以利用在前的视频帧和在后的视频帧进行预测编码。可以将双向预测帧作为初始图像帧。又例如,若视频流数据的时长为60秒(s),可以从该视频流数据中抽取16个关键帧、84个单预测帧和184个双向预测帧。184个双向预测帧可以作为184个初始图像帧。
49.例如,也可以按照预设时间间隔,从视频流数据中抽取出多个初始图像帧。
50.可以理解,上文对本公开的视频流数据和初始图像帧进行了说明,下面将对手部关键点进行进一步说明。
51.在本公开实施例中,例如在上述操作s210之前,可以对多个初始图像帧进行手部检测,以便从多个初始图像帧中确定出多个包含手部的初始图像帧,作为多个第一图像帧。
52.在本公开实施例中,在上述操作s210中,对多个第一图像帧进行检测,得到多个第一图像帧各自的多个手部关键点。例如,手部关键点可以为21个,下面将结合图3进行进一步说明。
53.图3是根据本公开的一个实施例的多个手部关键点的示意图。
54.在本公开实施例中,手部可以包括手腕和多个手指。多个手指可以包括拇指、食指、中指、无名指和小指。如图3所示,多个手部关键点可以包括手腕关键点0、拇指的多个单指关键点、食指的多个单指关键点、中指的多个单指关键点、无名指的多个单指关键点和小指的多个单指关键点。拇指的多个单指关键点包括单指关键点1、单指关键点2、单指关键点3以及单指关键点4。单指关键点4也可以被称为拇指的指尖关键点。食指的多个单指关键点包括单指关键点5、单指关键点6、单指关键点7以及单指关键点8。单指关键点8也可以被称为食指的指尖关键点。中指的多个单指关键点包括单指关键点9、单指关键点10、单指关键点11以及单指关键点12。单指关键点12也可以被称为中指的指尖关键点。无名指的多个单指关键点包括单指关键点13、单指关键点14、单指关键点15以及单指关键点16。单指关键点16也可以被称为无名指的指尖关键点。小指的多个单指关键点包括单指关键点17、单指关键点18、单指关键点19以及单指关键点20。单指关键点20也可以被称为小指的指尖关键点。
55.可以理解,上文对本公开的手部关键点进行了进一步说明,下面将对确定第一目标图像帧的一些方式进行说明。
56.在一些实施例中,在上述操作s220中,根据多个第一图像帧各自的多个手部关键点的位置,从多个第一图像帧中确定存在目标手势的多个第一目标图像帧包括:根据第一图像帧中多个手部关键点的位置,确定第一图像帧的目标信息。响应于确定目标信息满足
预设条件,确定第一图像帧中存在目标手势。
57.在本公开实施例中,目标信息可以包括手指弯曲信息、手部姿态信息和手指间距信息中的至少一个。预设条件可以包括手指弯曲条件、手部姿态条件和手指间距条件中的至少一个。例如,手指弯曲信息可以与手指的弯曲角度相关。手部姿态信息可以指示手的朝向为向下或向上。手指间距信息可以与相邻手指之间的距离相关。通过本公开实施例,签字或盖章过程中,可以充分考虑手指弯曲、间距以及姿态中的至少一个,有助于提高动作识别的准确性。下面将结合相关实施例对目标信息和相应的预设条件进行进一步说明。
58.在本公开实施例中,根据第一图像帧中多个手部关键点的位置,确定第一图像帧的目标信息可以包括:根据第一图像帧的多个手指关键点,确定第一图像帧的手指弯曲信息。
59.在本公开实施例中,根根据第一图像帧的多个手指关键点,确定第一图像帧的手指弯曲信息可以包括:根据第一图像帧的多个手指各自的多个单指关键点,确定多个手指各自的弯曲角度。
60.例如,根据第一图像帧的多个手指各自的多个单指关键点,确定多个手指各自的弯曲角度可以包括:根据手指的多个单指关键点,确定至少两个单指向量。根据至少两个单指向量,确定手指的弯曲角度。如上述,以食指为例,根据上述的单指关键点8和单指关键点7,可以确定单指向量单指向量可以表示为:
[0061][0062]
(x1,y1)可以为单指向量的坐标。
[0063]
根据上述的单指关键点7和单指关键点5,可以确定单指向量单指向量可以表示为:
[0064][0065]
(x2,y2)可以为单指向量的坐标。
[0066]
由此,可以根据单指向量和单指向量确定弯曲角度的余弦值cosθ:
[0067][0068]
根据该余弦值,利用反余弦函数,可以确定食指的弯曲角度。可以理解,单指向量可以由单指关键点7指向单指关键点8,单指向量可以由单指关键点7指向单指关键点5。也可以理解,单指向量的方向也可以为其他方向。
[0069]
下面将结合图4对本公开的手指的弯曲角度进行更进一步说明。
[0070]
图4是根据本公开的一个实施例的手指的弯曲角度的示意图。
[0071]
如图4所示,小指的弯曲角度例如可以为179.2度。无名指的弯曲角度例如可以为173.53度。中指的弯曲角度例如可以为173.72度。食指的弯曲角度例如可以为168.8度。拇指的弯曲角度例如可以为176.14度。
[0072]
也可以理解,上文根据手指的三个单指关键点确定了两个单指向量,但本公开不限于此,也可以根据手指的四个单指关键点确定两个或三个单指向量。例如,可以根据上述的单指关键点8和单指关键点7,确定一单指向量。也可以根据上述的单指关键点5和单指关
键点6,确定另一单指向量。
[0073]
在本公开实施例中,确定弯曲角度处于预设角度阈值范围内的手指的第一数目,作为第一图像帧的手指弯曲信息。例如,预设角度阈值范围包括第一预设角度阈值和第二预设角度阈值。第二预设角度阈值可以大于第一预设角度阈值。若弯曲角度大于或等于第一预设角度阈值且小于或等于第二预设角度阈值,可以确定该手指的弯曲角度处于预设角度阈值范围。以第一预设角度阈值是60度且第二预设角度阈值是120度为示例,如图4所示,第一数目可以为0。
[0074]
在本公开实施例中,手指弯曲条件可以包括:第一数目大于或等于第一预设数目阈值。例如,若确定第一数目大于或等于第一预设数目阈值,可以确定第一图像帧满足手指弯曲条件。以第一数目阈值是3为例,图4所示的图像帧未满足手指弯曲条件。通过本公开实施例,可以准确地确定手指的弯曲情况,有助于准确地进行动作识别。
[0075]
可以理解,上文对手指弯曲信息和手指弯曲条件进行了说明,下面将对手部姿态信息及手部姿态条件进行进一步说明。
[0076]
在本公开实施例中,根据第一图像帧的手腕关键点和多个手指关键点,确定第一图像帧的手部姿态信息可以包括:确定第一图像帧中手腕关键点与目标平面之间的第一关键点距离。确定第一图像帧中多个指尖关键点与目标平面之间的多个第二关键点距离。确定第二关键点距离小于或等于第一关键点距离的指尖关键点的第二数目,作为手部姿态信息。例如,目标平面可以是放置业务相关文档的桌面。可以将桌面的高度视为0。若第二关键点距离小于第一关键点距离,可以确定与第二关键点距离对应的指尖关键点的高度,低于手腕关键点。
[0077]
在本公开实施例中,手部姿态条件可以包括:第二数目大于或等于第二预设数目阈值。例如,若确定第二数目大于或等于第二预设数目阈值,可以确定第一图像帧满足手部姿态条件。可以理解,在满足手部姿态条件的情况下,第一图像帧中的手部朝下(即指向目标桌面)。通过本公开实施例,可以准确地确定手部姿态,有助于提高动作识别的准确率。
[0078]
可以理解,上文对手部姿态信息和手部姿态条件进行了说明,下面将对手指间距信息和手指间距条件进行进一步说明。
[0079]
在本公开实施例中,多个手指关键点包括多个手指各自的目标关键点,不同手指的目标关键点的语义一致。例如,食指、拇指、无名指、中指和小指各自的指尖关键点,可以作为目标关键点。又例如,上述的单指关键点3、单指关键点7、单指关键点11、单指关键点1 5以及单指关键点19为距离相应指尖关键点最近的单指关键点,也可以作为目标关键点。
[0080]
在本公开实施例中,根据第一图像帧的多个手指关键点,确定第一图像帧的手指间距信息可以包括:在多个手指中,确定相邻的两个手指各自的目标关键点之间的距离,得到多个相邻手指距离。确定相邻手指距离小于或等于预设距离阈值的第三数目,作为手指间距信息。例如,以目标关键点是指尖关键点为例,可以确定拇指的指尖关键点与食指的指尖关键点之间的距离,得到一个相邻手指距离。可以确定食指的指尖关键点与中指的指尖关键点之间的距离,得到一个相邻手指距离。可以确定中指的指尖关键点与无名指的指尖关键点之间的距离,得到一个相邻手指距离。可以确定无名指的指尖关键点与小指的指尖关键点之间的距离,得到一个相邻手指距离。由此,可以得到4个相邻手指距离。接下来,在4个相邻手指距离中,可以确定出小于或等于预设距离阈值的相邻手指距离的数目,作为手
指间距信息。
[0081]
在本公开实施例中,手指间距条件可以包括:第三数目大于或等于第三预设数目阈值。例如,若确定第三数目大于或等于第三预设数目阈值,可以确定第一图像帧满足手指间距条件。以第三预设数目阈值是3为例,对于上述4个相邻手指距离,若第三数目为4,可以确定相应第一图像帧满足手指间距条件。在满足手指间距条件的情况下,手指之间的距离较近,手势为签字或盖章手势的概率较高,有利于提高识别准确率。
[0082]
可以理解,上文对手指间距信息和手指间距条件进行了说明,下面将对本公开的预设条件进行更进一步说明。
[0083]
在本公开实施例中,预设条件的预设数目阈值可以与检测出的手部中手指的数目对应。例如,若检测出的手指的数目为5,预设条件中第一预设数目阈值可以为3。若检测出的手指的数目为4,预设条件中第一预设数目阈值可以为2。若检测出的手指的数目为6,预设条件中第一预设数目阈值可以为4。
[0084]
可以理解,上文对本公开的预设条件进行了更进一步说明,下面将对确定第一目标图像帧的一些方式进行更进一步说明。
[0085]
图5是根据本公开的一个实施例的第一图像帧的示意图。
[0086]
如图5所示,多个手部关键点包括手腕关键点50、拇指的多个单指关键点、食指的多个单指关键点、中指的多个单指关键点、无名指的多个单指关键点和小指的多个单指关键点。
[0087]
如图5所示,若食指、中指、无名指和小指各自的弯曲角度处于预设角度阈值范围内,可以确定第一数目为4,作为手指弯曲信息。若第一预设数目阈值为3,可以确定该第一图像帧的手指弯曲信息满足手指弯曲条件。
[0088]
如图5所示,手腕关键点50与桌面之间第一关键点距离,大于小指的单指关键点520与桌面之间的第二关键点距离。由此,可以确定第二数目为1,作为手指姿态信息。若第二预设数目阈值为1,可以确定该第一图像帧的手指姿态信息满足手部姿态条件。可以理解,单指关键点520可以为小指的指尖关键点。
[0089]
如图5所示,根据拇指的单指关键点54和食指的单指关键点58,可以确定拇指和食指之间的相邻手指距离。根据食指的单指关键点58和中指的单指关键点512,可以确定食指和中指之间的相邻手指距离。根据中指的单指关键点512和无名指的单指关键点516,可以确定中指和无名指之间的相邻手指距离。根据无名指的单指关键点516和小指的单指关键点520,可以确定无名指和小指之间的相邻手指距离。若这些相邻手指距离均小于预设距离阈值,可以确定第三数目为4,作为手指间距信息。若第三预设数目阈值为3,可以确定第一图像帧的手指间距信息满足手指间距条件。
[0090]
在第一图像帧的手指弯曲信息满足手指弯曲条件、手部姿态信息满足手部姿态条件和手指间距信息满足手指间距条件的情况下,可以确定第一图像帧中存在签字手势。该第一图像帧可以作为第一目标图像帧。
[0091]
可以理解,上文以第一图像帧的手指弯曲信息满足手指弯曲条件、手部姿态信息满足手部姿态条件和手指间距信息满足手指间距条件为示例,对确定第一目标图像帧的一些方式进行了说明。但本公开不限于此,在手指弯曲信息满足手指弯曲条件、手部姿态信息满足手部姿态条件和手指间距信息中的至少一个可以成立的情况下,也可以确定第一图像
帧中存在目标手势。
[0092]
可以理解,上文对确定目标手势的一些方式进行了说明,下面将对确定目标手势的持续时间的一些方式进行进一步说明。
[0093]
在本公开实施例中,在上述的操作s230中,根据多个第一目标图像帧,可以确定目标手势的持续时长。
[0094]
例如,若多个第一目标图像帧中相邻的两个第一目标图像帧之间的时间间隔一致,可以根据第一个第一目标图像帧对应的时刻和最后一个第一目标图像帧对应的时刻,确定一个初始时段。初始时段的时长可以作为持续时长。
[0095]
例如,根据多个第一目标图像帧,可以确定一个初始时段。此外,在多个第一目标图像帧中,可以确定相邻的两个第一目标图像帧之间的相邻时间间隔,得到多个相邻时间间隔。从多个相邻时间间隔,确定大于或等于预设时间间隔阈值的至少一个目标相邻时间间隔。将至少一个目标相邻时间间隔对应的至少一个时段从初始时段中删除,得到至少一个目标时段。根据至少一个目标时段的时长,可以确定至少一个持续时长。通过本公开实施例,在签字或盖章过程中,可能难以在一第一目标图像帧的在后图像帧中检测出目标手势。这可能是检测算法导致的,也可能是客户不想签字或盖章导致的。在这些情况下,相邻时间间隔可以是不同的。将较大相邻时间间隔删除,可以剔除未准确检测出目标手势的时段,以进一步提高动作识别的准确率。此外,在相邻时间间隔较小的情况下,也可以缓解检测算法本身的误差造成的影响,也有助于提高动作识别的准确率。
[0096]
可以理解,上文对确定持续时长的一些方式进行了说明,下面将对动作识别的一些方式进行进一步说明。
[0097]
在本公开实施例中,在例如上述操作s240中,响应于确定目标手势的持续时长大于或等于预设持续时长阈值,确定目标对象执行了目标动作。
[0098]
例如,若上述至少一个目标时段中,存在时长大于预设持续时长阈值的目标时段,可以确定目标对象执行了目标动作。
[0099]
可以理解,上文对动作识别的一些方式进行了说明。但本公开不限于此,为了提高识别的精度,可以确定第一目标图像帧中是否存在目标物体,下面将进行说明。
[0100]
在本公开另一实施例中,在上述操作s240的另一些实施方式中,响应于确定目标手势的持续时长大于或等于预设持续时长阈值,确定目标对象执行了目标动作包括:响应于确定目标手势的持续时长大于或等于预设持续时长阈值且至少一个第一目标图像帧中存在目标物体,确定目标对象执行了目标动作。例如,可以利用轻量级检测模型(picodet)确定第一图像帧中是否存在目标物体。目标物体可以是签字笔或印章。下面将结合图6对本公开的轻量级检测模型进行说明。
[0101]
图6是根据本公开的一个实施例的轻量级检测模型的示意图。
[0102]
如图6所示,轻量级检测模型可以包括主干网络n61、中间网络n62和输出网络n63。
[0103]
主干网络n61可以包括卷积单元conv1、卷积单元conv2、卷积单元conv3、卷积单元conv4以及卷积单元conv5。卷积单元conv1的输入图像可以是上述的图5。将输入图像输入卷积单元conv1,可以得到第一特征。将该第一特征输入卷积单元conv2,可以得到第二特征。将该第二特征输入卷积单元conv3,可以得到第三特征c63。将该第三特征c63输入卷积单元conv4,可以得到第四特征c64。将该第四特征c64输入卷积单元conv5,可以得到第五特
征c65。可以将第三特征c63、第四特征c64和第五特征c65分别输入中间网络n62。
[0104]
可以将第五特征c65输入卷积单元conv6,得到卷积后的第五特征。可以将第四特征c64输入卷积单元conv7,得到卷积后的第四特征。可以将第三特征c63输入卷积单元conv8,得到卷积后的第三特征。
[0105]
可以将卷积后的第五特征输入上采样单元upsamplel,得到上采样后的第五特征。将上采样后的第五特征与卷积后的第四特征拼接,得到第一拼接特征。将第一拼接特征输入交叉局部处理单元csp1,得到第一处理后拼接特征。将第一处理后拼接特征输入上采样单元upsample2,可以得到第一上采样后拼接特征。将第一上采样后拼接特征与卷积后的第三特征拼接,可以得到第二拼接特征。将第二拼接特征输入交叉局部处理单元csp2,可以得到第二处理后拼接特征。第二处理后拼接特征可以作为中间网络n62输出的中间网络特征p63。可以理解,可以基于通道拼接(channelwise concat)的方式进行拼接。
[0106]
可以将第二处理后拼接特征输入深度点卷积单元dp1,得到第一深度点卷积特征。此外,也可以将第一处理后拼接特征与第一深度点卷积特征拼接,得到第三拼接特征。将第三拼接特征输入交叉局部处理单元csp3,可以得到第三处理后拼接特征。第三处理后拼接特征可以作为中间网络特征p64。可以理解,深度点卷积单元可以基于深度(depthwise)和点(pointwise)进行处理。
[0107]
可以将第三处理后拼接特征输入深度点卷积单元dp2,得到第二深度点卷积特征。可以将第二深度点卷积特征与卷积后的第五特征拼接,得到第四拼接特征。可以将第四拼接特征输入交叉局部处理单元csp4,得到第四处理后拼接特征。第四处理后拼接特征可以作为中间网络特征p65。
[0108]
可以将第四处理后拼接特征输入深度点卷积处理单元dp3,得到第三深度点卷积特征。可以将卷积后的第五特征输入深度点卷积单元dp4,得到第四深度点卷积特征。可以将第三深度点卷积特征和第四深度点卷积特征融合(例如相加),得到中间网络特征p66。
[0109]
可以将中间网络特征p63至中间网络特征p66输入输出网络n64。输出网络n63可以对应多个输出通道。多个输出通道可以包括输出通道head1、输出通道head2、输出通道head3以及输出通道head4。每个输出通道对应一个尺寸范围。例如,输出通道head2可以确定图像中对象的类别class和标记框box。
[0110]
在本公开实施例中,若确定目标手势的持续时长大于或等于预设持续时长阈值且第一目标图像帧中存在目标物体,可以确定目标动作被执行。然而,视频流数据的初始图像帧中可以包含两个对象,分别为客户和业务人员。为了确定目标动作是客户执行的,可以确定执行目标手势对应的手部是否与目标对象的手部一致,下面将进行说明。
[0111]
在本公开实施例中,可以获取目标对象的标识信息。例如,在业务办理之前,在相关法律法规允许的范围内,可以请客户进行注册,以便获取客户的脸部特征信息和姓名等信息,作为目标对象的标识信息。
[0112]
在本公开实施例中,可以依次对多个初始图像帧进行目标识别,以确定目标对象首次出现的初始图像帧,作为第二目标图像帧。下面将结合图7a进行说明。
[0113]
图7a是根据本公开的一个实施例的第二目标图像帧的示意图。
[0114]
在一些实施例中,上述方法还可以包括:从多个初始图像帧中确定存在目标对象的第二目标图像帧。第二目标图像帧中可以包括两个对象,分别为目标对象和第一对象。目
标对象可以为客户,第一对象可以为业务人员。如图7a所示,检测框b711可以指示目标对象在第二目标图像帧中的位置。检测框b721可以指示第一对象在第二目标图像帧中的位置。
[0115]
在一些实施例中,上述方法还可以包括:对第二目标图像帧的多个在后图像帧进行检测,得到多个在后图像帧各自的检测框。检测框用于指示对象在在后图像帧中的位置。下面将结合图7b进行说明。
[0116]
图7b是根据本公开的一个实施例的第二目标图像帧的在后图像帧的示意图。
[0117]
如图7b所示,该在后图像帧例如可以是与第二面部图像帧相邻的初始图像帧。该在后图像帧中存在三个对象,分别为目标对象、第一对象和第二对象。第二对象例如可以是经过视频流采集设备的其他客户,与目标对象办理的相关业务无关。如图7b所示,检测框b712可以指示一对象在该在后图像帧中的位置。检测框b722可以指示一对象在该在后图像帧中的位置。检测框b73可以指示一对象在该在后图像帧中的位置。通过本公开实施例,针对在后图像帧,可以进行检测,以确定对象的位置,可以不确定对象的标识,以便降低在后图像帧检测的时间成本,提高动作识别的整体效率。
[0118]
在一些实施例中,上述方法还可以包括:根据多个检测框之间的距离,确定与目标对象对应的多个第一检测框。下面将结合图7c进行说明。
[0119]
图7c是根据本公开的一个实施例的确定检测框之间的距离的示意图。
[0120]
如图7c所示,可以将检测框b712、检测框b722和检测框b73映射至第二目标图像帧对应的坐标系中。接下来,可以确定检测框b712、检测框b722和检测框b73分别与检测框b711之间的多个距离。若确定检测框b712与检测框b711之间的距离d71小于预设距离阈值,可以将检测框b711作为与目标对象对应的第一检测框。也可以确定检测框b712、检测框b722和检测框b73分别与检测框b721之间的多个距离。若确定检测框b722与检测框b721之间的距离d72小于预设距离阈值,可以将检测框b711作为与第一对象对应的第二检测框。
[0121]
在一些实施例中,上述方法还可以包括:确定与多个第一检测框分别对应的多个局部图像中存在手部的多个目标局部图像。例如,可以对多个第一检测框分别对应的多个局部图像进行手部检测,确定存在手部的局部图像为目标局部图像。
[0122]
接下来,在一些实施例中,在上述操作s240的另一些实施方式中,响应于确定目标手势的持续时长大于或等于预设持续时长阈值,确定目标对象执行了目标动作包括:响应于确定目标手势的持续时长大于或等于预设持续时长阈值且目标手势对应的手部与目标局部图像中存在的手部一致,确定目标对象执行了目标动作。
[0123]
例如,可以从第一目标图像帧中获取包括手部的第一局部图像。确定第一局部图像与目标局部图像之间的相似度,若相似度大于或等于预设相似度阈值,可以确定目标手势对应的手部与目标局部图像中存在的手部一致。进而,可以确定目标手势是由目标对象执行的。由此,在确定目标手势的持续时长大于或等于预设时长阈值的情况下,可以准确地确定是目标对象执行了目标动作,可以显著提高动作识别的准确率。
[0124]
可以理解,第一目标图像帧可以为多个,目标局部图像也可以为多个。可以确定多个第一目标图像帧的各自的手部是否均与多个目标局部图像的手部一致。也可以从多个第一目标图像帧的确定至少一个第一目标图像帧,从多个目标局部图像中确定至少一个目标局部图像。确定至少一个第一目标图像帧中手部是否与至少一个目标局部图像中的手部是否一致。
[0125]
可以理解,上文对确定目标对象是否执行了目标动作的一些方式进行了说明,下面将对本公开的动作识别方法另一些实施方式进行说明。
[0126]
在一些实施例中,可以展示与目标动作对应的文档和文本图像。
[0127]
例如,与目标动作对应的文档可以是相关业务的合同、说明等。
[0128]
例如,与目标动作对应的文本图像可以是客户签署的姓名的图像,也可以是客户添加的印章的图像。
[0129]
在本公开实施例中,可以对文本图像进行识别,得到与目标动作对应的标识文本。确定标识文本是否与目标对象的标识信息一致。例如,可以利用光学字符识别(optical character recognition,ocr)技术对文本图像进行识别,得到标识文本。若确定该标识文本与客户注册时的姓名一致,可以确定相关业务办理完毕。
[0130]
在一些实施例中,上述方法还包括:响应于确定目标对象执行了目标动作,输出与目标动作对应的业务办理流程被审核通过的信息。例如,在确定了目标对象执行目标动作之后,可以确定业务办理流程结束,输出审核通过的信息至可视设备。又例如,在确定了目标对象执行目标动作并确定目标动作对应标识文本与目标对象的标识信息一致之后,可以确定业务办理流程结束,输出审核通过的信息至可视设备。又例如,若确定目标对象未执行目标动作或确定目标动作对应标识文本与目标对象的标识信息不一致,可以确定业务办理流程未结束,输出审核未通过的信息。
[0131]
可以理解,上文对本公开的动作识别方法进行了说明,下面将对本公开的动作识别装置进行说明。
[0132]
图8是根据本公开的另一个实施例的动作识别装置的框图。
[0133]
如图8所示,该装置800可以包括第一检测模块810、第一确定模块820、第二确定模块830和第三确定模块840。
[0134]
第一检测模块810,用于对多个第一图像帧进行检测,得到多个第一图像帧各自的多个手部关键点。例如,多个第一图像帧来自视频流数据的多个初始图像帧,第一图像帧包括手部。
[0135]
第一确定模块820,用于根据多个第一图像帧各自的多个手部关键点的位置,从多个第一图像帧中确定存在目标手势的多个第一目标图像帧。
[0136]
第二确定模块830,用于根据多个第一目标图像帧,确定目标手势的持续时长。
[0137]
第三确定模块840,用于响应于确定目标手势的持续时长大于或等于预设持续时长阈值,确定目标对象执行了目标动作。
[0138]
在一些实施例中,第一确定模块包括:第一确定子模块,用于根据第一图像帧中多个手部关键点的位置,确定第一图像帧的目标信息。第二确定子模块,用于响应于确定目标信息满足预设条件,确定第一图像帧中存在目标手势。
[0139]
在一些实施例中,目标信息包括手指弯曲信息、手部姿态信息和手指间距信息中的至少一个,预设条件包括手指弯曲条件、手部姿态条件和手指间距条件中的至少一个。
[0140]
在一些实施例中,第一图像帧中多个手部关键点包括:手腕关键点和多个手指关键点。第一确定子模块包括以下至少之一:
[0141]
第一确定单元,用于根据第一图像帧的多个手指关键点,确定第一图像帧的手指弯曲信息。第二确定单元,用于根据第一图像帧的手腕关键点和多个手指关键点,确定第一
图像帧的手部姿态信息。第三确定单元,用于根据第一图像帧中多个手指关键点,确定第一图像帧的手指间距信息。
[0142]
在一些实施例中,手部包括多个手指,多个手指关键点包括多个手指各自的多个单指关键点。第一确定单元包括:第一确定子单元,用于根据第一图像帧的多个手指各自的多个单指关键点,确定多个手指各自的弯曲角度。第二确定子单元,用于确定弯曲角度处于预设角度阈值范围内的手指的第一数目,作为第一图像帧的手指弯曲信息。
[0143]
在一些实施例中,手指弯曲条件包括第一数目大于或等于第一预设数目阈值。
[0144]
在一些实施例中,第一确定子单元还用于:根据手指的多个单指关键点,确定至少两个单指向量。根据至少两个单指向量,确定手指的弯曲角度。
[0145]
在一些实施例中,手部包括多个手指,多个手指关键点包括多个手指各自的指尖关键点。
[0146]
第二确定单元包括:第三确定子单元,用于确定第一图像帧中手腕关键点与目标平面之间的第一关键点距离。第四确定子单元,用于确定第一图像帧中多个指尖关键点与目标平面之间的多个第二关键点距离。第五确定子单元,用于确定第二关键点距离小于或等于第一关键点距离的指尖关键点的第二数目,作为手部姿态信息。
[0147]
在一些实施例中,手部姿态条件包括第二数目大于或等于第二预设数目阈值。
[0148]
在一些实施例中,手部包括多个手指,多个手指关键点包括多个手指各自的目标关键点,不同手指的目标关键点的语义一致。第三确定单元包括:第六确定子单元,用于在多个手指中,确定相邻的两个手指各自的目标关键点之间的距离,得到多个相邻手指距离。第七确定子单元,用于确定相邻手指距离小于或等于预设距离阈值的第三数目,作为手指间距信息。
[0149]
在一些实施例中,手指间距条件包括第三数目大于或等于第三预设数目阈值。
[0150]
在一些实施例中,第三确定模块还用于:响应于确定目标手势的持续时长大于或等于预设持续时长阈值且第一目标图像帧中存在目标物体,确定目标对象执行了目标动作。
[0151]
在一些实施例中,装置800还可以包括:第四确定模块,用于从多个初始图像帧中确定存在目标对象的第二目标图像帧。第二检测模块,用于对第二目标图像帧的多个在后图像帧进行检测,得到多个在后图像帧各自的检测框。例如,检测框用于指示对象在在后图像帧中的位置。第五确定模块,用于根据多个检测框之间的距离,确定与目标对象对应的多个第一检测框。第六确定模块,用于确定与多个第一检测框分别对应的多个局部图像中存在手部的多个目标局部图像。
[0152]
在一些实施例中,第三确定模块还用于:响应于确定目标手势的持续时长大于或等于预设持续时长阈值且目标手势对应的手部与目标局部图像中存在的手部一致,确定目标对象执行了目标动作。
[0153]
在一些实施例中,装置800还可以包括:展示模块,用于展示与目标动作对应的文档和文本图像。
[0154]
在一些实施例中,装置800还可以包括:输出模块,用于响应于确定目标对象执行了目标动作,输出与目标动作对应的业务办理流程被审核通过的信息。
[0155]
在一些实施例中,装置800还可以包括:抽帧模块,用于对所述视频流数据进行抽
帧,得到多个所述初始图像帧。
[0156]
在一些实施例中,所述目标动作是用于确认业务相关内容的动作。
[0157]
在一些实施例中,所述手指弯曲信息与多个所述手指各自的弯曲角度相关,所述手部姿态信息用于指示手部的朝向,手指间距条件信息与多个所述手指中相邻手指之间的距离相关。
[0158]
在一些实施例中,所述预设持续时长阈值与所述视频流数据的时长对应。
[0159]
在一些实施例中,所述第二确定模块包括:第三确定子模块,用于根据多个所述第一目标图像帧各自的时刻,确定初始时段。第四确定子模块,用于在多个第一目标图像帧中,确定相邻的两个所述第一目标图像帧之间的相邻时间间隔,得到多个所述相邻时间间隔。第五确定子模块,用于从多个所述相邻时间间隔,确定大于或等于预设时间间隔阈值的至少一个目标相邻时间间隔。删除子模块,用于将至少一个所述目标相邻时间间隔对应的至少一个时段从初始时段中删除,得到至少一个目标时段。第六确定子模块,用于根据至少一个所述目标时段的时长,可以确定至少一个持续时长。
[0160]
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
[0161]
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
[0162]
图9示出了可以用来实施本公开的实施例的示例电子设备900的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
[0163]
如图9所示,设备900包括计算单元901,其可以根据存储在只读存储器(rom)902中的计算机程序或者从存储单元908加载到随机访问存储器(ram)903中的计算机程序,来执行各种适当的动作和处理。在ram 903中,还可存储设备900操作所需的各种程序和数据。计算单元901、rom 902以及ram 903通过总线904彼此相连。输入/输出(i/o)接口905也连接至总线904。
[0164]
设备900中的多个部件连接至i/o接口905,包括:输入单元906,例如键盘、鼠标等;输出单元907,例如各种类型的显示器、扬声器等;存储单元908,例如磁盘、光盘等;以及通信单元909,例如网卡、调制解调器、无线通信收发机等。通信单元909允许设备900通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
[0165]
计算单元901可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元901的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元901执行上文所描述的各个方法和处理,例如动作识别方法。例如,在一些实施例中,动作识别方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元908。在一些实施例中,计算机程序的部分或者全部可以经由rom 902和/或通信单元909而被载入和/或安装到设备900上。当计算机程
序加载到ram 903并由计算单元901执行时,可以执行上文描述的动作识别方法的一个或多个步骤。备选地,在其他实施例中,计算单元901可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行动作识别方法。
[0166]
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、复杂可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
[0167]
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
[0168]
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0169]
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)显示器或者lcd(液晶显示器));以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
[0170]
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
[0171]
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计
算机程序来产生客户端和服务器的关系。
[0172]
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
[0173]
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
技术特征:
1.一种动作识别方法,包括:对多个第一图像帧进行检测,得到多个所述第一图像帧各自的多个手部关键点,其中,多个所述第一图像帧来自视频流数据的多个初始图像帧,所述第一图像帧包括手部;根据多个所述第一图像帧各自的多个手部关键点的位置,从多个所述第一图像帧中确定存在目标手势的多个第一目标图像帧;根据多个所述第一目标图像帧,确定所述目标手势的持续时长;响应于确定所述目标手势的持续时长大于或等于预设持续时长阈值,确定目标对象执行了目标动作。2.根据权利要求1所述的方法,其中,所述根据多个所述第一图像帧各自的多个手部关键点的位置,从多个所述第一图像帧中确定存在目标手势的多个第一目标图像帧包括:根据所述第一图像帧中多个手部关键点的位置,确定所述第一图像帧的目标信息;响应于确定所述目标信息满足预设条件,确定所述第一图像帧中存在所述目标手势。3.根据权利要求2所述的方法,其中,所述目标信息包括手指弯曲信息、手部姿态信息和手指间距信息中的至少一个,所述预设条件包括手指弯曲条件、手部姿态条件和手指间距条件中的至少一个。4.根据权利要求3所述的方法,其中,所述第一图像帧中多个所述手部关键点包括:手腕关键点和多个手指关键点,所述根据所述第一图像帧中多个手部关键点的位置,确定所述第一图像帧的目标信息包括以下至少之一:根据所述第一图像帧的多个所述手指关键点,确定所述第一图像帧的手指弯曲信息;根据所述第一图像帧的所述手腕关键点和多个所述手指关键点,确定所述第一图像帧的手部姿态信息;根据所述第一图像帧的多个所述手指关键点,确定所述第一图像帧的手指间距信息。5.根据权利要求4所述的方法,其中,所述手部包括多个手指,多个所述手指关键点包括多个手指各自的多个单指关键点,所述根据所述第一图像帧的多个所述手指关键点,确定所述第一图像帧的手指弯曲信息包括:根据所述第一图像帧的多个所述手指各自的多个所述单指关键点,确定多个所述手指各自的弯曲角度;确定所述弯曲角度处于预设角度阈值范围内的所述手指的第一数目,作为所述第一图像帧的手指弯曲信息。6.根据权利要求5所述的方法,其中,所述手指弯曲条件包括所述第一数目大于或等于第一预设数目阈值。7.根据权利要求5所述的方法,其中,所述根据所述第一图像帧的多个所述手指各自的多个所述单指关键点,确定多个所述手指各自的弯曲角度包括:根据所述手指的多个单指关键点,确定至少两个单指向量;根据至少两个所述单指向量,确定所述手指的弯曲角度。8.根据权利要求4所述的方法,其中,所述手部包括多个手指,多个所述手指关键点包括多个手指各自的指尖关键点,
所述根据所述第一图像帧的所述手腕关键点和多个所述手指关键点,确定所述第一图像帧的手部姿态信息包括:确定所述第一图像帧中所述手腕关键点与目标平面之间的第一关键点距离;确定所述第一图像帧中多个所述指尖关键点与所述目标平面之间的多个第二关键点距离;确定所述第二关键点距离小于或等于所述第一关键点距离的所述指尖关键点的第二数目,作为所述手部姿态信息。9.根据权利要求8所述的方法,其中,所述手部姿态条件包括所述第二数目大于或等于第二预设数目阈值。10.根据权利要求4所述的方法,其中,所述手部包括多个手指,多个所述手指关键点包括多个手指各自的目标关键点,不同所述手指的目标关键点的语义一致,所述根据所述第一图像帧的多个所述手指关键点,确定所述第一图像帧的手指间距信息包括:在多个所述手指中,确定相邻的两个所述手指各自的所述目标关键点之间的距离,得到多个相邻手指距离;确定所述相邻手指距离小于或等于预设距离阈值的第三数目,作为所述手指间距信息。11.根据权利要求10所述的方法,其中,所述手指间距条件包括所述第三数目大于或等于第三预设数目阈值。12.根据权利要求1所述的方法,其中,所述响应于确定所述目标手势的持续时长大于或等于预设持续时长阈值,确定所述目标对象执行了目标动作包括:响应于确定所述目标手势的持续时长大于或等于预设持续时长阈值且所述第一目标图像帧中存在目标物体,确定所述目标对象执行了目标动作。13.根据权利要求1所述的方法,还包括:从多个所述初始图像帧中确定存在所述目标对象的第二目标图像帧;对所述第二目标图像帧的多个在后图像帧进行检测,得到多个所述在后图像帧各自的检测框,其中,所述检测框用于指示对象在所述在后图像帧中的位置;根据多个所述检测框之间的距离,确定与所述目标对象对应的多个第一检测框;确定与多个所述第一检测框分别对应的多个局部图像中存在手部的多个目标局部图像。14.根据权利要求13所述的方法,其中,所述响应于确定所述目标手势的持续时长大于或等于预设持续时长阈值,确定所述目标对象执行了目标动作包括:响应于确定所述目标手势的持续时长大于或等于预设持续时长阈值且所述目标手势对应的手部与所述目标局部图像中存在的手部一致,确定所述目标对象执行了所述目标动作。15.根据权利要求1所述的方法,还包括:展示与所述目标动作对应的文档和文本图像。16.根据权利要求1所述的方法,还包括:响应于确定所述目标对象执行了目标动作,输出与所述目标动作对应的业务办理流程
被审核通过的信息。17.根据权利要求1所述的方法,还包括:对所述视频流数据进行抽帧,得到多个所述初始图像帧。18.根据权利要求1所述的方法,其中,所述目标动作是用于确认业务相关内容的动作。19.根据权利要求3所述的方法,其中,所述手指弯曲信息与多个所述手指各自的弯曲角度相关,所述手部姿态信息用于指示手部的朝向,手指间距条件信息与多个所述手指中相邻手指之间的距离相关。20.根据权利要求1所述的方法,其中,所述预设持续时长阈值与所述视频流数据的时长对应。21.根据权利要求1所述的方法,其中,所述根据多个所述第一目标图像帧,确定所述目标手势的持续时长包括:根据多个所述第一目标图像帧各自的时刻,确定初始时段;在多个第一目标图像帧中,确定相邻的两个所述第一目标图像帧之间的相邻时间间隔,得到多个所述相邻时间间隔;从多个所述相邻时间间隔,确定大于或等于预设时间间隔阈值的至少一个目标相邻时间间隔;将至少一个所述目标相邻时间间隔对应的至少一个时段从初始时段中删除,得到至少一个目标时段;根据至少一个所述目标时段的时长,确定至少一个持续时长。22.一种动作识别装置,包括:第一检测模块,用于对多个第一图像帧进行检测,得到多个所述第一图像帧各自的多个手部关键点,其中,多个所述第一图像帧来自视频流数据的多个初始图像帧,所述第一图像帧包括手部;第一确定模块,用于根据多个所述第一图像帧各自的多个手部关键点的位置,从多个所述第一图像帧中确定存在目标手势的多个第一目标图像帧;第二确定模块,用于根据多个所述第一目标图像帧,确定所述目标手势的持续时长;第三确定模块,用于响应于确定所述目标手势的持续时长大于或等于预设持续时长阈值,确定目标对象执行了目标动作。23.一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至21中任一项所述的方法。24.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1至21中任一项所述的方法。25.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1至21中任一项所述的方法。
技术总结
本公开提供了一种动作识别方法,涉及人工智能技术领域,尤其涉及目标检测、目标识别和动作识别等技术领域,可应用于视频处理场景下。具体实现方案为:对多个第一图像帧进行检测,得到多个第一图像帧各自的多个手部关键点,其中,多个第一图像帧来自视频流数据的多个初始图像帧,第一图像帧包括手部;根据多个第一图像帧各自的多个手部关键点的位置,从多个第一图像帧中确定存在目标手势的多个第一目标图像帧;根据多个第一目标图像帧,确定目标手势的持续时长;响应于确定目标手势的持续时长大于或等于预设持续时长阈值,确定目标对象执行了目标动作。本公开还提供了一种动作识别装置、电子设备和存储介质。电子设备和存储介质。电子设备和存储介质。
技术研发人员:段博坤 章良杰
受保护的技术使用者:北京百度网讯科技有限公司
技术研发日:2023.06.29
技术公布日:2023/9/7
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/