CN114187656A - 一种动作检测方法、装置、设备及存储介质 - Google Patents
一种动作检测方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114187656A CN114187656A CN202111441653.XA CN202111441653A CN114187656A CN 114187656 A CN114187656 A CN 114187656A CN 202111441653 A CN202111441653 A CN 202111441653A CN 114187656 A CN114187656 A CN 114187656A
- Authority
- CN
- China
- Prior art keywords
- rowing
- determining
- action
- motion
- target
- 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.)
- Withdrawn
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 57
- 238000003860 storage Methods 0.000 title claims abstract description 19
- 230000009471 action Effects 0.000 title claims description 180
- 230000033001 locomotion Effects 0.000 claims abstract description 167
- 238000000034 method Methods 0.000 claims abstract description 61
- 230000004044 response Effects 0.000 claims abstract description 26
- 238000001914 filtration Methods 0.000 claims description 40
- 210000000707 wrist Anatomy 0.000 claims description 30
- 238000004590 computer program Methods 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 10
- 230000001351 cycling effect Effects 0.000 claims description 9
- 210000003423 ankle Anatomy 0.000 claims description 7
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000036544 posture Effects 0.000 description 6
- 238000012935 Averaging Methods 0.000 description 4
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013136 deep learning model Methods 0.000 description 3
- 241000219109 Citrullus Species 0.000 description 2
- 235000012828 Citrullus lanatus var citroides Nutrition 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 230000000386 athletic effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000002146 bilateral effect Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 210000001513 elbow Anatomy 0.000 description 1
- 210000003414 extremity Anatomy 0.000 description 1
- 210000003811 finger Anatomy 0.000 description 1
- 238000009987 spinning Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种动作检测方法、装置、设备及存储介质,其中,所述方法包括:识别待处理的图像帧集合中每一图像帧的对象;所述图像帧集合中的图像帧具有先后时序关系;确定每一所述图像帧中与所述对象关联的关键点的位置信息;基于所述先后时序关系和每一帧中所述关键点的位置信息,确定所述关键点的轨迹信息;响应于所述关键点的轨迹信息满足预设条件,确定所述对象的动作为目标动作。
Description
技术领域
本申请涉及人工智能领域,涉及但不限于一种动作检测方法、装置、设备及存储介质。
背景技术
当前大部分动作(例如划船动作、骑车动作等)检测方法需要运动者佩戴检测设备(例如手环、心率传感器等),通过分析传感器的数据来监测运动动作、频率、速率等关键信息。然而,佩戴检测设备进行运动,有可能会影响到运动者的运动动作,同时传感器数据无法直观反应运动者的姿态动作,因此需要一种无感、更直观的动作检测方法。
发明内容
有鉴于此,本申请实施例提供一种动作检测方法、装置、设备及存储介质。
第一方面,本申请实施例提供一种动作检测方法,所述方法包括:识别待处理的图像帧集合中每一图像帧的对象;所述图像帧集合中的图像帧具有先后时序关系;确定每一所述图像帧中与所述对象关联的关键点的位置信息;基于所述先后时序关系和每一帧中所述关键点的位置信息,确定所述关键点的轨迹信息;响应于所述关键点的轨迹信息满足预设条件,确定所述对象的动作为目标动作。
通过上述方式,可以实现在运动者身上不佩戴任何设备的情况下对目标动作进行检测,从而不会影响运动者的目标动作,同时,由于图像的直观性,使得检测更加直观。此外,因为图像中可包含多个运动者,因此,可以实现同时对同一场景中的多位运动者进行目标动作的检测。
第二方面,本申请实施例提供一种动作检测装置,所述装置包括:识别模块,用于识别待处理的图像帧集合中每一图像帧的对象;所述图像帧集合中的图像帧具有先后时序关系;第一确定模块,用于确定每一所述图像帧中与所述对象关联的关键点的位置信息;第二确定模块,用于基于所述先后时序关系和每一帧中所述关键点的位置信息,确定所述关键点的轨迹信息;第三确定模块,用于响应于所述关键点的轨迹信息满足预设条件,确定所述对象的动作为目标动作。
第三方面,本申请实施例提供一种电子设备,所述设备包括:存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法中的步骤。
第四方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法中的步骤。
本申请实施例中,首先识别待处理图像帧集合中每一图像帧的对象,然后确定每一图像帧中与所述对象关联的关键点的位置信息,再基于先后时序关系和每一帧中所述关键点的位置信息,确定关键点的轨迹信息,最后响应于关键点的轨迹信息满足预设条件,确定出所述对象的动作为目标动作。由于本申请实施例中的待处理对象为图像帧集合,图像帧集合可以通过摄像头、本地数据库或外部设备传输而得到,因此,可以实现在运动者身上不佩戴任何设备的情况下对目标动作进行检测,从而不会影响运动者的目标动作,同时,由于图像的直观性,使得检测更加直观。此外,因为图像中可包含多个运动者,因此,可以实现同时对同一场景中的多位运动者进行目标动作的检测。
附图说明
图1A为本申请实施例一种动作检测系统的一个可选的架构示意图;
图1B为本申请实施例提供的一种动作检测方法的流程示意图;
图1C为本申请实施例提供的一种通过本申请实施例提供的动作检测方法驱动机器人执行匹配动作的示意图;
图2为本申请实施例提供的另一种动作检测方法的流程示意图;
图3为本申请实施例提供的另一种动作检测方法的流程示意图;
图4为本申请实施例提供的一种划船动作检测方法的流程示意图;
图5为本申请实施例提供的一种动作检测装置的结构示意图;
图6为本申请实施例电子设备的一种硬件实体示意图。
具体实施方式
下面结合附图和实施例对本申请的技术方案进一步详细阐述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本申请的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
需要指出,本申请实施例所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
本申请实施例提供一种动作检测方法,应用于电子设备。所述电子设备包括但不限于手机、笔记本电脑、平板电脑、掌上上网设备、多媒体设备、流媒体设备、移动互联网设备、机器人或其他类型的电子设备。该方法所实现的功能可以通过电子设备中的处理器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该电子设备至少包括处理器和存储介质。处理器可以用于进行动作检测,存储器可以用于存储进行动作检测过程中需要的数据以及产生的数据。
图1A为本申请实施例一种动作检测系统10的一个可选的架构示意图,参见图1A,在一些实施例中,图像采集装置100可以将图像帧集合发送到服务器200,通过服务器200传输给电子设备300,由电子设备300执行动作检测;在另一些实施例中,图像采集装置100可以直接将图像帧集合传输给电子设备300进行动作检测。
在一些实施例中,服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。图像采集装置、电子设备以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例不做限定。下面将说明电子设备300的示例性应用。
图1B为本申请实施例提供的一种动作检测方法的流程示意图,应用于电子设备,如图1B所示,所述方法包括:
步骤102:识别待处理的图像帧集合中每一图像帧的对象;所述图像帧集合中的图像帧具有先后时序关系;
这里,图像帧集合包括视频或者实时帧图像,所述图像可为:2D图像或者3D图像,其中,2D图像可包括:单目或多目摄像头采集的红绿蓝(RGB)图像等。在一些实现方式中,该图像帧集合可以为电子设备上设置的图像采集装置,如摄像头模组实时采集的图像;在另一些实现方式中,该图像帧集合可以为其他设备通过即时通信的方式传输给电子设备的需要进行动作检测的图像;在一些实现方式中,该图像帧集合也可以是电子设备响应于任务处理指令,通过服务器调用本地相册并从中获取的原始采集图像,对此本申请实施例不做限定。其中,不同时刻或时段获取的图像帧集合可以相同也可以不同,图像帧集合中图像帧的数量可以根据实际需求确定,例如5帧、10帧、15帧等。
在一些实施例中,所述图像帧的对象可以包括静态和动态的对象,本申请实施例中识别的对象可以是指运动者,例如运动的人、动物、机器人等。在一些实施例中,所述对象的数量可以为一个、两个或多个,本申请实施例对运动的对象和数量不做限定。
在本申请实施例中处理的图像帧中存在人脸/人体对象时,应用本申请技术方案的产品可以在获取图像帧之前取得对象同意;例如可以通过弹窗信息等方式获得对象授权,或是设置明确的标识告知对象会获取其人脸/人体图像,或者可以请对象自行上传其图像帧集合等方式。
在一些实施例中,识别图像帧的对象可以利用神经网络等深度学习模型,通过目标检测算法,如人体姿态检测算法,检测待处理的图像帧集合,从而识别出待处理的图像帧集合中每一图像帧的对象。
步骤104:确定每一所述图像帧中与所述对象关联的关键点的位置信息;
这里,关键点的位置信息可以为人体关键点的位置信息,包括但不限于:骨架关键点的位置信息和/或轮廓关键点的位置信息。骨架关键点的位置信息是骨架的关键点的位置信息,例如手腕、手肘、手指、脚腕等;轮廓关键点的位置信息是肢体的外表面的关键点的位置信息,例如手部轮廓的顶点等。
在一些实施例中,关键点的位置信息还可以包括所述对象身体上某个相对与身体位置固定的点的位置信息,例如,头上的发卡、身上的胸针等,所述位置信息可以包括坐标,如图像中的坐标。
在一些实施例中,在图像帧中确定与所述对象关联的关键点的位置信息,可以利用神经网络等深度学习模型,通过人体关键点检测算法检测待处理的图像帧集合,从而确定每一图像帧中与所述对象关联的关键点的位置信息。
实施时,确定所述关键点的位置信息可以首先利用神经网络等深度学习模型得到身体骨架全身关键点的位置信息,得到全身关键点的位置信息之后,连接这些关键点,就获得了整个骨架,基于骨架内各个骨头和关节的相对分布位置,就可以确定出哪些关键点是与所述对象关联的所述关键点,从而确定出所述关键点的位置信息。
在一些实施例中,确定所述关键点的位置信息还可以通过人体识别等,先识别出所述关键点所在的位置,仅针对所述关键点所在的位置进行关键点的位置信息的提取。
在一些实施例中,每一图像帧中包括至少两个所述对象,为了方便确定每一所述对象的所述关键点的位置信息,可以让每一所述对象之间保持一定的距离,降低将关键点的位置信息匹配到错误对象的风险。
步骤106:基于所述先后时序关系和每一帧中所述关键点的位置信息,确定所述关键点的轨迹信息;
这里,由于不同图像帧的先后时序不同,不同时序的图像帧中识别得到的对象的身体姿态或运动状态可能不同,而不同身体姿态或不同运动状态下关键点的位置信息即坐标会发生变化,故可以根据图像帧的先后时序关系以及关键点的位置信息,确定关键点的位置信息变化,即确定出关键点的轨迹信息。
步骤108:响应于所述关键点的轨迹信息满足预设条件,确定所述对象的动作为目标动作。
这里,目标动作可以根据应用的场景而定。例如,本申请实施例可以应用在划船场景中,其中,划船场景可以为真实的划船场景,即通过划船动作,使船在水中划行;划船场景也可以只是划船的动作,即没有水,只做划船的动作,则目标动作为划船动作。再如,本申请实施例也可以应用在骑车场景中,其中,骑车场景可以为在健身房骑动感单车或椭圆机;也可以为没有车,只做骑车的动作;还可以为真实的骑自行车场景,则目标动作为骑车动作。又如,本申请实施例还可以应用在体感游戏场景中,例如切西瓜、打地鼠、划艇等游戏,则目标动作为切西瓜、打地鼠、划艇的动作。本申请实施例对目标动作的类型不做限定。
预设条件可以根据目标动作的期望运动轨迹而定,例如,目标动作的期望运动轨迹为圆形,则预设条件可以为满足圆形参数的条件;又例如,目标动作的期望运动轨迹为椭圆形,则预设条件可以为满足椭圆形参数的条件。实施时,可以将与所述对象关联的关键点的运动轨迹作为目标动作的运动轨迹,再基于与所述对象关联的关键点的运动轨迹,确定关键点的运动轨迹是否满足预设条件,进而判断所述对象的动作是否为目标动作。
在一些实施例中,所述对象关联的关键点可以为人体关键点,在所述目标动作为划船动作的情况下,所述人体关键点包括手腕点。由于划船时,所述手腕点的期望运动轨迹为椭圆形,因此,预设条件可以为满足椭圆参数范围的条件。当所述手腕点的轨迹信息满足预设条件即椭圆参数范围的条件时,可以确定所述对象的动作为划船动作。
在一些实施例中,步骤108的实施可以将所述手腕点的轨迹信息拟合为椭圆形,再比对所述手腕点的轨迹信息是否满足预设条件,从而确定所述对象的动作是否为划船动作。
在一些实施例中,所述对象关联的关键点可以为人体关键点,在所述目标动作为骑车动作的情况下,所述人体关键点包括脚腕点。由于骑车时,所述脚腕点的期望运动轨迹为圆形,因此,预设条件也可以为满足圆形参数范围的条件。当所述脚腕点的轨迹信息满足预设条件即圆形参数范围的条件时,可以确定所述对象的动作为骑车动作。
本申请实施例中,通过使与对象关联的关键点包括手腕点或脚腕点,实现对划船动作或骑车动作的检测。
本申请实施例中,首先识别待处理图像帧集合中每一图像帧的对象,然后确定每一图像帧中与所述对象关联的关键点的位置信息,再基于先后时序关系和每一帧中所述关键点的位置信息,确定关键点的轨迹信息,最后响应于关键点的轨迹信息满足预设条件,确定出所述对象的动作为目标动作。由于本申请实施例中的待处理对象为图像帧集合,图像帧集合可以通过摄像头、本地数据库或外部设备传输而得到,因此,可以实现在运动者身上不佩戴任何设备的情况下对目标动作进行检测,从而不会影响运动者的目标动作,同时,由于图像的直观性,使得检测更加直观。此外,因为图像中可包含多个运动者,因此,可以实现同时对同一场景中的多位运动者进行目标动作的检测。
在一些实施例中,所述电子设备包括机器人,在步骤108确定所述对象的动作为目标动作之后,可以驱动所述机器人执行匹配动作,对应地,所述方法还包括:
步骤1110:基于任一所述图像帧中每一所述对象的位置,确定与每一所述对象匹配的机器人;
这里,一个机器人可以匹配一个对象,也可以匹配至少两个对象,本申请实施例对对象与机器人之间的数量匹配关系不做限定。
步骤1112:确定每一所述对象的目标动作的方向和速度;
这里,步骤1112的实施可以将与每一所述对象关联的关键点的轨迹信息拟合为几何图形,再根据几何图形的性质确定出每一所述对象的目标动作的方向和速度。例如,在所述目标动作为划船动作的情况下,可以将与每一所述对象关联的关键点的轨迹信息拟合为椭圆形,再通过连接每一图像帧中的关键点和椭圆的圆心,得到腕心线,通过确定每一图像帧的腕心线与椭圆长半径的夹角,得到线轴角,然后基于每两个图像帧之间线轴角的差值,确定每一所述对象的划船动作的方向和速度。
步骤1114:基于每一所述对象的目标动作的方向和速度,输出控制指令,所述控制指令用于控制对应机器人执行匹配动作。
这里,步骤1114的实施适用于这种情况:图像帧的对象包括至少一个对象,而机器人与对象是一一对应的,即,一个机器人匹配一个对象。
其中,匹配动作可以为与目标动作同类型的动作,例如,目标动作为划船动作,匹配动作也为划船动作。匹配动作也可以为与目标动作不同类型的动作,例如,目标动作为划船动作,匹配动作为骑车动作。
在一些实施例中,步骤1114的实施可以包括:
步骤1114a:基于每一所述对象的目标动作的方向和速度,确定对应机器人执行的匹配动作的方向和速度;
这里,步骤1114a的实施包括:在确定所述对象的目标动作的方向和速度之后,机器人可以按照所述对象的目标动作的方向和速度执行匹配动作,也可以根据所述对象目标动作的方向和速度,设置机器人执行的匹配动作的方向和速度,例如,机器人执行的匹配动作的方向可以和所述对象目标动作的方向相同,机器人执行的匹配动作的速度可以和所述对象目标动作的速度成正比例关系。
步骤1114b:输出控制指令,其中,所述控制指令中携带有确定后的对应的机器人执行的匹配动作的方向和速度,所述控制指令用于控制对应机器人执行匹配动作。
下面以目标动作为划船动作,每一图像帧的对象包括两个对象,一个机器人匹配一个对象为例进行说明,如图1C所示,受控模型(机器人套装搭建的龙舟模型)400上搭载着一个摄像头4001,划船者500和划船者501站在摄像头4001前方,模仿划龙舟的动作,其中,基于划船者500和划船者501的位置,确定出与划船者500和划船者501匹配的对象分别为机器人4004和机器人4005,受控模型400上的处理器4002针对摄像头4001采集的图像执行动作检测任务,当确定出划船者500和划船者501的划船方向和划船速度时,受控模型400上的机器人4004和机器人4005分别按照划船者500和划船者501的方向和速度转动桨叶4003。
在另一些实施例中,在所述图像帧的对象包括至少两个对象,且至少有一个机器人匹配至少两个对象的情况下,在步骤1112“确定每一所述对象的目标动作的方向和速度”之后,该方法还包括:
步骤1241:判断所述至少两个对象的目标动作的方向和速度是否相同。
在一些实施例中,步骤1241的实施可以预先设置目标动作的速度的预设范围,当每一所述对象的目标动作的速度都在所述预设范围内时,判断每一所述对象的目标动作的速度相同。当至少一个所述对象的目标动作的速度不在所述预设范围内时,判断每一所述对象的目标动作的速度不同。
步骤1242:在所述至少两个对象的目标动作的方向和速度不同的情况下,步骤1242的实施可以包括两种情况:
第一种情况:对对应的机器人不输出控制指令,即机器人不动作。
第二种情况:基于所述至少两个对象的目标动作的方向和速度,对对应的机器人输出控制指令,所述控制指令用于控制对应机器人执行匹配动作。
这里,基于所述至少两个对象的目标动作的方向和速度,对对应的机器人输出控制指令,所述控制指令用于控制对应机器人执行匹配动作的实施包括:
步骤1242a:基于所述至少两个对象的目标动作的方向和速度,确定对应的机器人执行的匹配动作的方向和速度;
其中,步骤1242a的实施包括:在一些实施例中,对应机器人执行的匹配动作的速度可以为:所述至少两个对象的目标动作的速度的平均速度;对应机器人执行的匹配动作的方向可以为:所述至少两个对象中的某一个对象的目标动作的方向。实施时,对应机器人执行的匹配动作的方向可以基于所述对象的位置来确定,例如,指定图像帧中最左侧对象的目标动作的方向为对应机器人执行的匹配动作的方向。
在一些实施例中,对应机器人执行的匹配动作的速度和方向可以为:所述至少两个对象的目标动作的速度的平均速度和目标动作的方向的平均方向;其中,目标动作的方向可以包括顺时针方向和逆时针方向。实施时,可以先将目标动作的方向转化为相应的数值,例如,目标动作的方向为顺时针方向时数值为1,目标动作的方向为逆时针方向时数值为-1;再对所述至少两个对象的目标动作的方向求平均,得到平均方向;最后将平均方向与设置的方向阈值进行比较,得到匹配动作的方向。例如,设置方向阈值为0,当求平均方向之后的数值大于或等于0时,匹配动作的方向为顺时针方向;当求平均方向之后的数值小于0时,匹配动作的方向为逆时针方向。
步骤1242b:对对应的机器人输出控制指令,其中,所述控制指令中携带有确定后的对应的机器人执行的匹配动作的方向和速度,所述控制指令用于控制对应机器人执行匹配动作。
步骤1243:在所述至少两个对象的目标动作的方向和速度相同的情况下,步骤1243的实施可以包括:
步骤1243a:基于所述对象的目标动作的方向和速度,确定对应机器人执行的匹配动作的方向和速度;
这里,确定对应机器人执行的匹配动作的方向和速度的实施可参见步骤1114a。
步骤1243b:对对应的机器人输出控制指令,其中,所述控制指令中携带有确定后的对应的机器人执行的匹配动作的方向和速度,所述控制指令用于控制对应机器人执行匹配动作。
在一些实施例中,在所述对象的数量为至少两个的情况下,在步骤108确定所述对象的动作为目标动作之后,所述方法还包括:
步骤1210:基于所述对象的位置,确定与每一所述对象匹配的机器人;
这里,步骤1210的实施可以根据对象与机器人的匹配关系,基于对象的位置,通过相应的规则,来确定与每一对象匹配的机器人。
例如,一个机器人可以匹配一个对象,则所述对象的位置与机器人的位置是一一对应的,对应地,步骤1210的实施可以为按照从右到左的顺序,图像帧中的第一个对象匹配机器人中的第一个对象,图像帧中的第二个对象匹配机器人中的第二个对象。
又如,一个机器人可以匹配多个对象,则所述对象中的多个位置与一个机器人的位置相对应,对应地,步骤1210的实施可以为按照从左到右的顺序,图像帧中的第一、二、三个对象匹配机器人中的第一个对象,图像帧中的第四、五、六个对象匹配机器人中的第二个对象。本申请实施例对所述对象的位置与机器人的位置之间的匹配关系不做限定。
步骤1212:在至少两个所述对象匹配同一目标机器人的情况下,基于每一帧中每一所述对象所述关键点的位置信息,判断匹配同一所述目标机器人的所述至少两个对象的目标动作的幅度是否一致;
这里,至少两个所述对象匹配同一目标机器人即一个机器人匹配至少两个对象的情况。
在一些实施例中,步骤1212的实施可以预先设置每一帧中每一对象关键点位置信息的偏差(如每一对象关键点位置信息中高度的最大值与最小值之差)范围,然后确定每一帧中每一对象关键点位置信息的偏差,当所述偏差在所述偏差范围内时,判断每一对象的目标动作的幅度一致;当存在至少一个所述偏差不在所述偏差范围内时,判断每一对象的目标动作的幅度不一致。
步骤1214:响应于匹配同一所述目标机器人的所述至少两个对象的目标动作的幅度不一致,对对应的目标机器人不输出控制指令。
本申请实施例中,在确定所述对象的动作为目标动作之后,可以根据不同的情况,驱动机器人执行不同的动作,增加了模型的智能性和趣味性。
本申请实施例应用在划船场景中时,所述目标动作包括划船动作,对应地,步骤108“响应于所述关键点的轨迹信息满足预设条件,确定所述对象的动作为目标动作”的实施包括:
步骤1082:基于所述关键点的轨迹信息,拟合椭圆;
在一些实施例中,所述划船场景只是划船的动作,即没有水,只做划船的动作,则步骤1082的实施可以基于所述关键点的轨迹信息,拟合椭圆。
这里,椭圆拟合法的基本思路是:对于给定平面上的一组样本点即关键点的位置信息,寻找一个椭圆,使其尽可能靠近这些样本点。也就是说,将图像帧中得到的一组关键点的轨迹信息数据以椭圆方程为模型进行拟合,使某一椭圆方程尽量满足这些数据,并求出该椭圆方程的各个参数。在一些实施例中,拟合椭圆的方法可以是最小二乘法,本申请实施例对拟合椭圆的方法不做限定。
在一些实施例中,所述划船场景可以为真实的划船场景,即通过划船动作,使船在水中划行。对应地,所述电子设备还可以包括距离检测组件,其中,所述距离检测组件用于检测船移动的距离,例如距离传感器(又称为位移传感器),则步骤1082的实施可以为通过距离检测组件检测出每一帧图像中船相对于起始位置移动的距离,再将每一帧图像中所述对象关键点的位置信息中的水平距离减去船移动的距离,转化为船不运动时对应的位置信息,最后针对转化后的位置信息进行拟合,得到椭圆。
在一些实施例中,在所述目标动作包括骑车动作的情况下,步骤1082的实施可以基于所述关键点的轨迹信息,拟合圆形。拟合的形状可以根据所述目标动作的运动轨迹而定,本申请实施例对拟合的形状不做限定。
步骤1084:确定拟合后的所述椭圆的参数值;
在一些实施例中,椭圆的参数值包括短半径值和长半径值。在其他实施例中,椭圆的参数值还可以包括椭圆心、周长等。本申请是实施例对参数值的类型不做限定。
步骤1086:响应于所述椭圆的参数值在预设范围内,确定所述对象的动作为划船动作。
这里,预设范围可根据椭圆参数值的类型进行设定,例如椭圆参数值的类型包括短半径值和长半径值,则预设范围可以为短半径值大于100像素,且长半径值与短半径值之比小于等于2。则当拟合之后的椭圆的短半径值大于100像素,且长半径值与短半径值之比小于等于2时,确定所述对象的动作为划船动作。
本申请实施例中,首先将关键点的轨迹信息拟合为椭圆形,然后确定拟合后的椭圆的参数值,当参数值在预设范围内时,确定所述对象的动作为划船动作。通过将关键点的轨迹信息转化为椭圆形,利用椭圆形的性质,实现了对对象的动作是否为划船动作的判定。
本申请实施例还提供一种动作检测方法,在划船场景中,如图2所示,所述方法包括:
步骤201至步骤203,分别对应参见步骤102、步骤104和步骤106。
步骤204:基于所述关键点的轨迹信息,拟合椭圆;
这里,步骤204可参见步骤1082。
步骤205:确定拟合后的所述椭圆的短半径值和长半径值;
步骤206:确定所述长半径值与短半径值之间的比值;
步骤207:响应于所述短半径值在第一预设范围内,且所述比值在第二预设范围内,确定所述对象的动作为划船动作。
这里,短半径用于限定划船动作中划的圈的大小,即短半径的值大于一定值时,被认为是在划船;所述比值用于限定划船动作的标准度,所述比值越大,划船动作越不标准。在一些实施例中,第一预设范围中数值的大小可以根据图像分辨率进行设定,图像的分辨率越大,第一预设范围中的数值越大,例如第一预设范围中的数值可以为100像素,对应地,第一预设范围可以为大于100像素。第二预设范围可以为小于等于2,其中,长半径值与短半径值的比值越小,所述对象的划船动作越标准,在一些实施例中,第二预设范围可以为小于等于比2小的数。
对应地,当拟合之后的椭圆的短半径值大于100像素,且长半径值与短半径值之比小于等于2时,确定所述对象的动作为划船动作。
本申请实施例中,通过设置第一预设范围和第二预设范围,并比对短半径值与第一预设范围和所述比值与第二预设范围的大小,来确定所述对象的动作是否为划船动作,进而提高判断的准确性。
本申请实施例还提供一种动作检测方法,在划船场景中,所述目标动作包括划船动作,如图3所示,所述方法包括:
步骤301至步骤307同步骤201至步骤207。
步骤308:连接每一图像帧中所述关键点和所述椭圆的圆心,得到腕心线;
这里,所述椭圆的圆心为拟合后椭圆的圆心,由于所述目标动作包括划船动作,则所述关键点包括手腕点,连接每一图像帧中手腕点和拟合后椭圆的圆心,得到腕心线。
步骤309:确定每一图像帧的所述腕心线与所述椭圆长半径的夹角,得到线轴角;
在一些实施例中,线轴角也可以通过确定每一图像帧的腕心线与椭圆短半径的夹角而得。在一些实施例中,线轴角还可以通过确定每一图像帧的腕心线与经过椭圆圆心的任意一条固定的直线的夹角而得。
本申请实施例对线轴角的确定方法不做限定。
步骤310:基于每一图像帧的所述线轴角,确定所述对象的划船动作的方向和划船速度。
在一些实施例中,所述对象的划船动作的方向包括顺时针方向和逆时针方向,所述划船速度为手臂划船的角速度。
在一些实施例中,步骤310的实施可以通过确定每一图像帧的线轴角与每一所述图像帧之前的第N帧的线轴角之间的差值,确定所述对象的划船动作的方向和划船速度。
这里,若所述差值为正,则划船动作的方向为逆时针方向;若所述差值为负,则划船动作的方向为顺时针方向。所述差值除以图像帧对应的时间差,即为划船速度。例如,第1帧的线轴角为18度(°),第3帧的线轴角为20°,第3帧与第1帧线轴角的差值为2°,由于差值为正,则说明划船动作的方向为逆时针方向,若一帧为33毫秒(ms),则第3帧与第1帧的时间差为66ms,那么划船速度为2/66=1/33°/ms。
本申请实施例中,通过连接每一图像帧中关键点和椭圆的圆心,得到腕心线,通过确定每一图像帧的腕心线与椭圆长半径的夹角,得到线轴角,然后基于每一图像帧的线轴角,实现了对所述对象的划船动作的方向和划船速度的确定。
在划船场景中,步骤310“基于每一图像帧的所述线轴角,确定所述对象的划船动作的方向和划船速度”的实施包括:
步骤3101:确定位于所述图像帧集合中每一所述图像帧之前的第N帧的线轴角;
步骤3102:确定每一图像帧的线轴角与对应的第N帧的线轴角之间的差值;
步骤3103:基于所述差值,确定划船动作的方向集合和划船速度集合;
在一些实施例中,步骤3103的实施可以通过计算一个图像帧的线轴角与该图像帧之前的第N帧的线轴角之间的差值,确定划船动作的方向集合和划船速度集合,即划船动作的方向集合和划船速度集合中只包括一个划船动作的方向和一个划船速度。例如,计算第3图像帧与第1图像帧线轴角之间的差值,基于所述差值,确定所述对象的划船动作的方向和划船速度。
在一些实施例中,步骤3103的实施还可以通过计算多个图像帧的线轴角与每一个图像帧之前的第N帧的线轴角之间的差值,确定划船动作的方向集合和划船速度集合,即划船动作的方向集合和划船速度集合中包括多个划船动作的方向和多个划船速度。例如,计算第3图像帧与第1图像帧线轴角之间的差值,得到第一个划船动作的方向和第一个划船速度,计算第4图像帧与第2图像帧线轴角之间的差值,得到第二个划船动作的方向和第二个划船速度,依次得到多个划船动作的方向和多个划船速度,基于多个所述差值,确定所述对象的划船动作的方向和划船速度。
步骤3104:对所述划船动作的方向集合和所述划船速度集合进行滤波处理,得到所述对象的所述划船动作的方向和所述划船速度。
这里,所述滤波处理可以为均值滤波、中值滤波、高斯滤波、双边滤波等,本申请实施例对滤波的方法不做限定。以均值滤波为例,均值滤波也称为线性滤波,其采用的主要方法为邻域平均法。线性滤波的基本原理是用均值代替原图像中的各个像素值。
在划船动作的方向集合和划船速度集合中只包括一个划船动作的方向和一个划船速度的情况下,划船动作的方向集合和划船速度集合内的划船动作的方向和划船速度即为所述对象的所述划船动作的方向和所述划船速度。
在划船动作的方向集合和划船速度集合中包括多个划船动作的方向和多个划船速度的情况下,可以对划船速度集合和划船动作的方向集合进行滤波处理,得到所述对象的划船速度和划船动作的方向。
本申请实施例中,首先通过确定每一图像帧的线轴角与对应的第N帧的线轴角之间的差值,得到划船动作的方向集合和划船速度集合,然后滤波处理划船动作的方向集合和划船速度集合,得到所述对象的划船动作的方向和划船速度,提高检测的准确性。
在划船场景中,步骤3104中的所述对所述划船动作的方向集合进行滤波处理,得到所述对象的所述划船动作的方向的实施包括:
步骤3041:对所述划船动作的方向集合进行滤波处理;
这里,由于划船动作的方向包括顺时针方向和逆时针方向,而滤波处理例如均值滤波的对象需为数字,因此,步骤3041的实施可以先将划船动作的方向转化为数字形式,再进行滤波处理,例如划船动作的方向为顺时针方向时,数值可以设置为1,划船动作的方向为逆时针方向时,数值可以设置为-1,方便对划船动作的方向集合进行滤波处理。本申请实施例对划船动作的方向为顺时针方向和逆时针方向时的数值大小不做限定。
步骤3042:响应于滤波处理之后的值大于或等于预设阈值,得到所述对象的所述划船动作的方向为顺时针方向;
这里,预设阈值可以根据划船动作的方向为顺时针方向和逆时针方向时的数值大小而定,例如,若划船动作的方向为顺时针方向时,数值为1,划船动作的方向为逆时针方向时,数值为-1,则预设阈值可以为0,即滤波处理之后的值大于或等于0时,所述对象的所述划船动作的方向为顺时针方向。又例如,若划船动作的方向为顺时针方向时,数值为2,划船动作的方向为逆时针方向时,数值为0,则预设阈值可以为1,即滤波处理之后的值大于或等于1时,所述对象的所述划船动作的方向为顺时针方向。
步骤3043:响应于滤波处理之后的值小于预设阈值,得到所述对象的所述划船动作的方向为逆时针方向。
继续以划船动作的方向为顺时针方向时,数值为1,划船动作的方向为逆时针方向时,数值为-1为例进行说明,则预设阈值可以为0,即滤波处理之后的值小于0时,所述对象的所述划船动作的方向为逆时针方向。
本申请实施例中,通过将划船动作的方向转化为数字形式,实现了对划船动作的方向集合的滤波处理。
本申请实施例提供一种划船动作检测方法,如图4所示,所述方法包括:
步骤401:使用摄像头拍摄划船者(侧身位,可拍到划船者左半身的划船动作),获取连续的图像;
这里,连续的图像为所述图像帧集合,划船者为所述对象。
步骤402:使用人体姿态检测算法对图像进行人体关键点检测(可为任意开源人体姿态检测算法);
这里,人体关键点为与所述对象关联的关键点。
步骤403:得到左手手腕点的位置信息,并使用前10帧的历史左手手腕点位置数据,拟合椭圆形,得到拟合椭圆的参数(椭圆圆心、短半径、长半径);
这里,前10帧图像为所述待处理的图像帧,左手手腕点位置数据为与所述对象关联的关键点的位置信息。
步骤404:判断拟合椭圆的参数是否在标准范围内,如短边半径大于100像素,(长边半径/短边半径)≤2等,参数可调节。如椭圆的参数不在范围内,则划船者当前未作出划船动作;
这里,短边半径大于100像素为所述第一预设范围,长边半径/短边半径小于或者等于2为所述第二预设范围。
步骤405:根据当前手腕点位置与圆心位置,计算手腕点相对于圆心的角度;
这里,手腕点相对于圆心的角度为所述线轴角。
步骤406:确定当前角度与上一帧角度的差值,得到划船方向与划船速率;
这里,计算当前角度与上一帧角度的差值即为确定每一图像帧的线轴角与位于每一所述图像帧之前的第1帧的线轴角之间的差值。
步骤407:对划船方向与划船速率进行均值滤波;
这里,均值滤波即为所述滤波处理。由于前10帧图像为所述待处理的图像帧,因此,步骤407的实施可以计算第2帧角度与第1帧角度的差值,第3帧角度与第2帧角度的差值,依次计算前10帧图像中相邻两帧之间的差值,得到9个划船方向与9个划船速率,即为划船动作的方向集合和划船速度集合,再针对这9个划船方向与9个划船速率进行均值滤波,得到划船者的划船方向和划船速率。
在一些实施例中,步骤407的实施可以设置划船方向为顺时针时,数值为1,逆时针时,数值为-1,然后针对划船动作的方向集合进行均值滤波。
步骤408:输出划船状态和/或划船方向与划船速率;
步骤409:控制机器人电机以相同方向、速率转动,进而模拟划船动作。
在一些实施例中,本申请实施例的实际使用场景可以在机器人上。例如使用机器人套装搭建龙舟模型,龙舟模型上有电机,可带动龙舟上的机器人进行划龙舟的动作,同时龙舟模型搭载一个摄像头。划船者可以站在摄像头前方,模仿划龙舟的动作,龙舟模型上的机器人也会以相同方向、速率转动桨叶。
这里,步骤409之后,会返回步骤401,继续获取图像,进行划船动作检测。
基于前述的实施例,本申请实施例提供一种动作检测装置,该装置包括所包括的各模块、以及各模块所包括的各子模块,各子模块所包括的各单元,以及各单元所包括的各子单元,都可以通过电子设备来实现;当然也可通过具体的逻辑电路实现;在实施的过程中,处理器可以为中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)或现场可编程门阵列(FPGA)等。
图5为本申请实施例提供的一种动作检测装置的组成结构示意图,如图5所示,所述动作检测装置500包括识别模块501、第一确定模块502、第二确定模块503和第三确定模块504,其中:
识别模块501,用于识别待处理的图像帧集合中每一图像帧的对象;所述图像帧集合中的图像帧具有先后时序关系;
第一确定模块502,用于确定每一所述图像帧中与所述对象关联的关键点的位置信息;
第二确定模块503,用于基于所述先后时序关系和每一帧中所述关键点的位置信息,确定所述关键点的轨迹信息;
第三确定模块504,用于响应于所述关键点的轨迹信息满足预设条件,确定所述对象的动作为目标动作。
在一些实施例中,所述装置还包括:
第四确定模块,用于基于任一所述图像帧中每一所述对象的位置,确定与每一所述对象匹配的机器人;第五确定模块,用于确定每一所述对象的目标动作的方向和速度;第一输出模块,用于基于每一所述对象的目标动作的方向和速度,输出控制指令,所述控制指令用于控制对应机器人执行匹配动作。
在一些实施例中,所述装置还包括:
第六确定模块,用于在所述对象的数量为至少两个的情况下,基于每一所述对象的位置,确定与每一所述对象匹配的机器人;
判断模块,用于在至少两个所述对象匹配同一目标机器人的情况下,基于每一帧中每一所述对象所述关键点的位置信息,判断匹配同一所述目标机器人的所述至少两个对象的目标动作的幅度是否一致;
第二输出模块,用于响应于匹配同一所述目标机器人的所述至少两个对象的目标动作的幅度不一致,对对应的目标机器人不输出控制指令。
在一些实施例中,所述对象关联的关键点为人体关键点,在所述目标动作包括划船动作的情况下,所述人体关键点包括手腕点;在所述目标动作包括骑车动作的情况下,所述人体关键点包括脚腕点。
在一些实施例中,所述目标动作包括划船动作,所述第三确定模块504包括:拟合子模块,用于基于所述关键点的轨迹信息,拟合椭圆;第一确定子模块,用于确定拟合后的所述椭圆的参数值;第二确定子模块,用于响应于所述椭圆的参数值在预设范围内,确定所述对象的动作为划船动作。
在一些实施例中,所述椭圆的参数值包括短半径值和长半径值,所述装置还包括:第七确定模块,用于确定所述长半径值与短半径值之间的比值;
所述第二确定子模块还包括:第一确定单元,用于响应于所述短半径值在第一预设范围内,且所述比值在第二预设范围内,确定所述对象的动作为划船动作。
在一些实施例中,所述目标动作包括划船动作,所述第五确定模块包括:连接子模块,用于连接每一图像帧中所述关键点和所述椭圆的圆心,得到腕心线;第三确定子模块,用于确定每一图像帧的所述腕心线与所述椭圆长半径的夹角,得到线轴角;第四确定子模块,用于基于每一图像帧的所述线轴角,确定所述对象的划船动作的方向和划船速度。
在一些实施例中,所述第四确定子模块包括:第二确定单元,用于确定位于所述图像帧集合中每一所述图像帧之前的第N帧的线轴角;第三确定单元,用于确定每一图像帧的线轴角与对应的第N帧的线轴角之间的差值;第四确定单元,用于基于所述差值,确定划船动作的方向集合和划船速度集合;滤波单元,用于对所述划船动作的方向集合和所述划船速度集合进行滤波处理,得到所述对象的所述划船动作的方向和所述划船速度。
在一些实施例中,所述划船动作的方向包括顺时针方向和逆时针方向,所述滤波单元包括:滤波子单元,用于对所述划船动作的方向集合进行滤波处理;第一响应子单元,用于响应于滤波处理之后的值大于或等于预设阈值,得到所述对象的所述划船动作的方向为顺时针方向;第二响应子单元,用于响应于滤波处理之后的值小于预设阈值,得到所述对象的所述划船动作的方向为逆时针方向。
以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请装置实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
需要说明的是,本申请实施例中,如果以软件功能模块的形式实现上述的动作检测方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机、服务器等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、ROM(Read Only Memory,只读存储器)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本申请实施例不限制于任何特定的硬件和软件结合。
对应地,本申请实施例提供一种电子设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述实施例中提供的动作检测方法中的步骤。
在一种可能的实现方式中,电子设备可包括主控器和积木组件,其中:所述主控器包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述实施例中提供的动作检测方法中的步骤;所述积木组件,用于拼搭不同类型的机器人,例如,可以采用积木组件拼搭出图1C中所示的划船者机器人4004和机器人4005,本申请实施例对机器人的类型不做限定。
对应地,本申请实施例提供一种可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述动作检测方法中的步骤。
这里需要指出的是:以上存储介质和平台实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请存储介质和平台实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
图6为本申请实施例电子设备的一种硬件实体示意图,如图6所示,该电子设备600的硬件实体包括:处理器601、通信接口602和存储器603,其中:
处理器601通常控制电子设备600的总体操作。通信接口602可以使电子设备600通过网络与其他平台或电子设备或服务器通信。存储器603配置为存储由处理器601可执行的指令和应用,还可以缓存待处理器601以及电子设备600中各模块待处理或已经处理的数据(例如,图像数据、音频数据、语音通信数据和视频通信数据),可以通过FLASH(闪存)或RAM(Random Access Memory,随机访问存储器)实现。
本公开实施例还提供了一种计算机程序产品,包括计算机可读代码,当计算机可读代码在设备上运行时,设备中的处理器执行用于实现如上任一实施例提供的方法的指令。该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以全部集成在一个处理模块中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (12)
1.一种动作检测方法,其特征在于,包括:
识别待处理的图像帧集合中每一图像帧的对象;所述图像帧集合中的图像帧具有先后时序关系;
确定每一所述图像帧中与所述对象关联的关键点的位置信息;
基于所述先后时序关系和每一帧中所述关键点的位置信息,确定所述关键点的轨迹信息;
响应于所述关键点的轨迹信息满足预设条件,确定所述对象的动作为目标动作。
2.根据权利要求1所述的方法,其特征在于,在确定所述对象的动作为目标动作之后,还包括:
基于任一所述图像帧中每一所述对象的位置,确定与每一所述对象匹配的机器人;
确定每一所述对象的目标动作的方向和速度;
基于每一所述对象的目标动作的方向和速度,输出控制指令,所述控制指令用于控制对应机器人执行匹配动作。
3.根据权利要求1所述的方法,其特征在于,在确定所述对象的动作为目标动作之后,还包括:
在所述对象的数量为至少两个的情况下,基于每一所述对象的位置,确定与每一所述对象匹配的机器人;
在至少两个所述对象匹配同一目标机器人的情况下,基于每一帧中每一所述对象所述关键点的位置信息,判断匹配同一所述目标机器人的所述至少两个对象的目标动作的幅度是否一致;
响应于匹配同一所述目标机器人的所述至少两个对象的目标动作的幅度不一致,对对应的目标机器人不输出控制指令。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述对象关联的关键点为人体关键点,在所述目标动作包括划船动作的情况下,所述人体关键点包括手腕点;在所述目标动作包括骑车动作的情况下,所述人体关键点包括脚腕点。
5.根据权利要求4所述的方法,其特征在于,所述目标动作包括划船动作,所述响应于所述关键点的轨迹信息满足预设条件,确定所述对象的动作为目标动作,包括:
基于所述关键点的轨迹信息,拟合椭圆;
确定拟合后的所述椭圆的参数值;
响应于所述椭圆的参数值在预设范围内,确定所述对象的动作为划船动作。
6.根据权利要求5所述的方法,其特征在于,所述椭圆的参数值包括短半径值和长半径值,所述方法还包括:
确定所述长半径值与短半径值之间的比值;
所述响应于所述椭圆的参数值在预设范围内,确定所述对象的动作为划船动作,包括:
响应于所述短半径值在第一预设范围内,且所述比值在第二预设范围内,确定所述对象的动作为划船动作。
7.根据权利要求5所述的方法,其特征在于,所述目标动作包括划船动作,所述确定所述对象目标动作的方向和速度,包括:
连接每一图像帧中所述关键点和所述椭圆的圆心,得到腕心线;
确定每一图像帧的所述腕心线与所述椭圆长半径的夹角,得到线轴角;
基于每一图像帧的所述线轴角,确定所述对象的划船动作的方向和划船速度。
8.根据权利要求7所述的方法,其特征在于,所述基于每一图像帧的所述线轴角,确定所述对象的划船动作的方向和划船速度,包括:
确定位于所述图像帧集合中每一所述图像帧之前的第N帧的线轴角;
确定每一图像帧的线轴角与对应的第N帧的线轴角之间的差值;
基于所述差值,确定划船动作的方向集合和划船速度集合;
对所述划船动作的方向集合和所述划船速度集合进行滤波处理,得到所述对象的所述划船动作的方向和所述划船速度。
9.根据权利要求8所述的方法,其特征在于,所述划船动作的方向包括顺时针方向和逆时针方向,所述对所述划船动作的方向集合进行滤波处理,得到所述对象的所述划船动作的方向,包括:
对所述划船动作的方向集合进行滤波处理;
响应于滤波处理之后的值大于或等于预设阈值,得到所述对象的所述划船动作的方向为顺时针方向;
响应于滤波处理之后的值小于预设阈值,得到所述对象的所述划船动作的方向为逆时针方向。
10.一种动作检测装置,其特征在于,所述装置包括:
识别模块,用于识别待处理的图像帧集合中每一图像帧的对象;所述图像帧集合中的图像帧具有先后时序关系;
第一确定模块,用于确定每一所述图像帧中与所述对象关联的关键点的位置信息;
第二确定模块,用于基于所述先后时序关系和每一帧中所述关键点的位置信息,确定所述关键点的轨迹信息;
第三确定模块,用于响应于所述关键点的轨迹信息满足预设条件,确定所述对象的动作为目标动作。
11.一种电子设备,其特征在于,包括:存储器和处理器,所述存储器存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1至9任一项所述方法中的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至9任一项所述动作检测方法中的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111441653.XA CN114187656A (zh) | 2021-11-30 | 2021-11-30 | 一种动作检测方法、装置、设备及存储介质 |
PCT/CN2022/090999 WO2023097967A1 (zh) | 2021-11-30 | 2022-05-05 | 一种动作检测方法、装置、设备、存储介质及计算机程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111441653.XA CN114187656A (zh) | 2021-11-30 | 2021-11-30 | 一种动作检测方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114187656A true CN114187656A (zh) | 2022-03-15 |
Family
ID=80603052
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111441653.XA Withdrawn CN114187656A (zh) | 2021-11-30 | 2021-11-30 | 一种动作检测方法、装置、设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114187656A (zh) |
WO (1) | WO2023097967A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115311445A (zh) * | 2022-10-12 | 2022-11-08 | 南通红运金属科技有限公司 | 一种用于冶金工艺的渣盒智能检测方法 |
WO2023097967A1 (zh) * | 2021-11-30 | 2023-06-08 | 上海商汤智能科技有限公司 | 一种动作检测方法、装置、设备、存储介质及计算机程序产品 |
CN116714021A (zh) * | 2023-07-26 | 2023-09-08 | 上海迪成智能科技有限公司 | 基于数据分析的单轨吊巡检机器人智能测试方法 |
WO2023184804A1 (zh) * | 2022-03-31 | 2023-10-05 | 上海商汤智能科技有限公司 | 模型控制方法、装置、设备、存储介质及计算机程序产品 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10154281B2 (en) * | 2016-01-22 | 2018-12-11 | Mitsubishi Electric Research Laboratories, Inc. | Method and apparatus for keypoint trajectory coding on compact descriptor for video analysis |
CN110858409A (zh) * | 2018-08-24 | 2020-03-03 | 北京微播视界科技有限公司 | 动画生成方法和装置 |
CN111435268A (zh) * | 2019-01-11 | 2020-07-21 | 合肥虹慧达科技有限公司 | 基于图像的识别与重建的人机交互方法和使用该方法的系统及装置 |
US11087133B2 (en) * | 2019-07-31 | 2021-08-10 | Baidu Usa Llc | Method and apparatus for determining a target object, and human-computer interaction system |
CN113627334A (zh) * | 2021-08-10 | 2021-11-09 | 浙江大华技术股份有限公司 | 对象的行为识别方法及装置 |
CN114187656A (zh) * | 2021-11-30 | 2022-03-15 | 上海商汤智能科技有限公司 | 一种动作检测方法、装置、设备及存储介质 |
CN114758415A (zh) * | 2022-03-31 | 2022-07-15 | 深圳市商汤科技有限公司 | 模型控制方法、装置、设备及存储介质 |
-
2021
- 2021-11-30 CN CN202111441653.XA patent/CN114187656A/zh not_active Withdrawn
-
2022
- 2022-05-05 WO PCT/CN2022/090999 patent/WO2023097967A1/zh unknown
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023097967A1 (zh) * | 2021-11-30 | 2023-06-08 | 上海商汤智能科技有限公司 | 一种动作检测方法、装置、设备、存储介质及计算机程序产品 |
WO2023184804A1 (zh) * | 2022-03-31 | 2023-10-05 | 上海商汤智能科技有限公司 | 模型控制方法、装置、设备、存储介质及计算机程序产品 |
CN115311445A (zh) * | 2022-10-12 | 2022-11-08 | 南通红运金属科技有限公司 | 一种用于冶金工艺的渣盒智能检测方法 |
CN116714021A (zh) * | 2023-07-26 | 2023-09-08 | 上海迪成智能科技有限公司 | 基于数据分析的单轨吊巡检机器人智能测试方法 |
CN116714021B (zh) * | 2023-07-26 | 2024-01-23 | 上海迪成智能科技有限公司 | 基于数据分析的单轨吊巡检机器人智能测试方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2023097967A1 (zh) | 2023-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114187656A (zh) | 一种动作检测方法、装置、设备及存储介质 | |
WO2021129064A9 (zh) | 姿态获取方法、关键点坐标定位模型的训练方法和装置 | |
Qiao et al. | Real-time human gesture grading based on OpenPose | |
KR20200068545A (ko) | 컨벌루션 신경망을 트레이닝하고 트레이닝된 컨벌루션 신경망을 이용하여 비디오의 대상에 의해 수행되는 행동을 분류하기 위한 시스템 및 방법 | |
CN111414797B (zh) | 用于估计对象的姿势和姿态信息的系统和方法 | |
CN113706699B (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN110728739B (zh) | 一种基于视频流的虚拟人控制与交互方法 | |
US20230245366A1 (en) | 3d avatar generation using biomechanical analysis | |
CN109961039A (zh) | 一种个人进球视频捕捉方法及系统 | |
Kowalski et al. | Holoface: Augmenting human-to-human interactions on hololens | |
US11461905B2 (en) | Determining a kinematic sequence | |
CN112446254A (zh) | 人脸追踪的方法及相关装置 | |
CN116703968A (zh) | 针对目标对象的视觉跟踪方法、装置、系统、设备和介质 | |
CN116523962A (zh) | 针对目标对象的视觉跟踪方法、装置、系统、设备和介质 | |
US20210322852A1 (en) | Determining trajectory of a ball from two-dimensional media-content using computer vision | |
CN110705496B (zh) | 一种基于九轴传感器的游泳姿势识别方法 | |
CN115223240A (zh) | 基于动态时间规整算法的运动实时计数方法和系统 | |
CN116069157A (zh) | 虚拟对象显示方法、装置、电子设备及可读介质 | |
CN112712545A (zh) | 人体部分跟踪方法和人体部分跟踪系统 | |
Poussard et al. | 3DLive: A multi-modal sensing platform allowing tele-immersive sports applications | |
Hori et al. | Silhouette-Based 3D Human Pose Estimation Using a Single Wrist-Mounted 360° Camera | |
Xing et al. | Markerless motion capture of human body using PSO with single depth camera | |
CN115273243B (zh) | 跌倒检测方法、装置、电子设备和计算机可读存储介质 | |
US20240020901A1 (en) | Method and application for animating computer generated images | |
Nishanthan et al. | The Realtime Yoga Assistance System |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40067431 Country of ref document: HK |
|
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20220315 |
|
WW01 | Invention patent application withdrawn after publication |