掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本发明涉及图像识别领域,尤其涉及一种危险动作检测方法及终端。

背景技术

随着老龄化程度逐渐加深以及社会的发展,独居的情况越来越普遍,而独居特别是老人独居在发生危险时很难被及时发现从而耽误救治的时机,例如摔倒后失去行动力无法及时求助时,这种情况对独居者的人身安全存在威胁。

现有技术中存在通过监控图像读取人体特征点实现识别出危险动作的方案,其通常是通过人体的夹角和姿态的持续时间进行判断,但正常的躺卧无法被区分出来,影响识别结果的准确率,现有技术中也有通过训练深度学习算法进行识别的方法,但前期准备的工作量大,成本高。

发明内容

本发明所要解决的技术问题是:提供一种危险动作检测方法及终端,实现降低对危险动作判断的错误率。

为了解决上述技术问题,本发明采用的一种技术方案为:

一种危险动作检测方法,包括步骤:

获取待判断图片,并将所述待判断图片输入骨架关键点检测网络得到人体关键点;

获取所述人体关键点中预设的危险动作关键点集合,根据所述危险动作关键点集合计算人体位姿;

若所述人体位姿符合危险位姿,则获取拍摄所述待判断图片的摄像头的摄像头位置以及所述摄像头的目视线在所述待判断图片中的目视线位置;并根据所述人体关键点计算人体在所述待判断图片中的人体位置;

根据所述摄像头位置以及目视线位置与人体位置的高度差得到危险动作判断结果。

为了解决上述技术问题,本发明采用的另一种技术方案为:

一种危险动作检测终端,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

获取待判断图片,并将所述待判断图片输入骨架关键点检测网络得到人体关键点;

获取所述人体关键点中预设的危险动作关键点集合,根据所述危险动作关键点集合计算人体位姿;

若所述人体位姿符合危险位姿,则获取拍摄所述待判断图片的摄像头的摄像头位置以及所述摄像头的目视线在所述待判断图片中的目视线位置;并根据所述人体关键点计算人体在所述待判断图片中的人体位置;

根据所述摄像头位置以及目视线位置与人体位置的高度差得到危险动作判断结果。

本发明的有益效果在于:通过骨架关键点检测网络先识别出待判断图片中所有人体关键点,再根据预设的危险动作关键点集合筛选人体关键点,计算出人体位姿,若人体位姿符合危险位姿,再通过摄像头的位置、摄像头在待判断图片中的目视线以及图片中的人体位置确认图片中人体在真实世界中的位置,从而能够根据高度差对危险位姿进行二次判断,能够仅通过当前获取的一张待判断图片就判断出是否出现危险状态,并且能够顾排除在床上躺卧或者在地板上站立的正常位姿,降低对危险动作判断的错误率并且根据摄像头位置和目视线位置进行判断的方式,无需进行复杂的图像中位置到真实世界位置的换算,简化了判断的过程。

附图说明

图1为本发明实施例的一种危险动作检测方法的步骤流程图;

图2为本发明实施例的一种危险动作检测方法的实际应用流程图;

图3为本发明实施例的一种危险动作检测终端的结构示意图;

标号说明:

1、一种危险动作检测终端;2、处理器;3、存储器。

具体实施方式

为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。

请参照图1,一种危险动作检测方法,包括步骤:

获取待判断图片,并将所述待判断图片输入骨架关键点检测网络得到人体关键点;

获取所述人体关键点中预设的危险动作关键点集合,根据所述危险动作关键点集合计算人体位姿;

若所述人体位姿符合危险位姿,则获取拍摄所述待判断图片的摄像头的摄像头位置以及所述摄像头的目视线在所述待判断图片中的目视线位置;并根据所述人体关键点计算人体在所述待判断图片中的人体位置;

根据所述摄像头位置以及目视线位置与人体位置的高度差得到危险动作判断结果。

从上述描述可知,本发明的有益效果在于:通过骨架关键点检测网络先识别出待判断图片中所有人体关键点,再根据预设的危险动作关键点集合筛选人体关键点,计算出人体位姿,若人体位姿符合危险位姿,再通过摄像头的位置、摄像头在待判断图片中的目视线以及图片中的人体位置确认图片中人体在真实世界中的位置,从而能够根据高度差对危险位姿进行二次判断,能够仅通过当前获取的一张待判断图片就判断出是否出现危险状态,并且能够顾排除在床上躺卧或者在地板上站立的正常位姿,降低对危险动作判断的错误率并且根据摄像头位置和目视线位置进行判断的方式,无需进行复杂的图像中位置到真实世界位置的换算,简化了判断的过程。

进一步地,所述获取所述人体关键点中预设的危险动作关键点集合,根据所述危险动作关键点集合计算人体位姿包括:

获取所述人体关键点中的腿部关键点集合;

根据所述腿部关键点集合计算腿部位姿;

所述若所述人体位姿符合危险位姿包括:

若所述腿部位姿符合摔倒特征或爬高特征,则判断所述腿部位姿符合危险位姿。

由上述描述可知,危险动作中摔倒的判定较为重要就是腿部位姿的判断,因若摔倒后还能够继续站起行走,则说明影响较小,最危险的情况是摔倒之后无法起身,故为了加快计算的过程,减小发现摔倒到系统确定为摔倒并进行预警的过程,聚焦在腿部关键点,减小纳入计算的人体关键点,若腿部位姿符合摔倒、爬高等危险位姿,才进入下一步继续判断的过程,进一步减少计算量。

进一步地,所述危险动作关键点集合包括至少两个危险动作关键点;

所述根据所述危险动作关键点集合计算人体位姿包括:

计算每两个所述危险动作关键点之间的正切值;

所述若所述人体位姿符合危险位姿包括:

若大于第一预设数量的所述正切值均小于摔倒阈值,则所述人体位姿符合摔倒特征;

若大于第二预设数量的所述正切值均大于爬高阈值,则所述人体位姿符合爬高特征。

由上述描述可知,根据危险动作关键点之间的正切值得到两个危险关键点之间的角度,即通常以地面的平行线作为X轴构建坐标系,通过计算正切值就能够获取到危险关键点与地面的角度,从而能够判断出危险关键点之间的连线即人体是否和地面平行或垂直,从而对危险关键点对应的人体位姿进行初步判断,若大于第一预设数量的正切值均小于摔倒阈值,则说明危险关键点的连线与地面接近于平行,很有可能是出现摔倒情况,若大于第二预设数量的正切值均大于爬高阈值,则说明危险关键点的连线与地面接近于垂直,很有可能出现爬高情况。

进一步地,所述计算每两个所述危险动作关键点之间的正切值包括:

分别获取两个危险动作关键点的坐标(x

所述正切值tan_angle=|y

由上述描述可知,通过坐标值直接求两个危险动作关键点之间的正切值,即能反映两个危险动作关键点之间的夹角,帮助反映实际位姿情况

进一步地,还包括:

获取左关键点集合以及右关键点集合;

遍历所述左关键点集合,当遍历到目标左关键点(x

x=(x

y=(y

遍历结束后,获取所有所述危险动作关键点组成危险动作关键点集合。

由上述描述可知,因人体粗略概括是对称的,人体关键点很多都是以左右形式存在的,例如左手关键点、右手关键点、左膝关键点、右膝关键点等等,若分别进行判断会加大计算量,故此处将识别出的左右关键点取二者的中点作为最终参与计算的危险动作关键点,减少了计算量并且能够将左右位置都纳入考虑,在大部分常规情况下都能够提高判断的效率并且保证正确率。

进一步地,还包括:

若所述目标左关键点不存在对应的目标右关键点,则以所述目标左关键点作为危险动作关键点;

若遍历结束后所述右关键点集合中还存在未被遍历的右关键点,则以未被遍历的所述右关键点作为危险动作关键点。

由上述描述可知,如果左关键点或右关键点不存在对应的另一边关键点,则直接将其本身作为危险动作关键点进行计算,能够纳入更多考虑的信息从而提高最终判断结果的准确度。

进一步地,所述获取所述人体关键点中预设的危险动作关键点,根据所述危险动作关键点计算人体位姿还包括:

获取所述人体关键点中的一上身关键点作为危险动作关键点。

由上述描述可知,以上身关键点作为腿部关键点的辅助,全面综合了人体的特征,能够进一步提高判断动作的精度。

进一步地,所述获取摄像头位置以及所述摄像头的目视线在所述待判断图片中的目视线位置包括:

获取摄像头的安装高度;

获取所述待判断图片的水平中心线,作为所述目视线位置。

由上述描述可知,因危险动作中常见的摔倒和爬高都与高度有关,故将获取摄像头的安装高度作为真实世界的参考,摄像头的默认拍摄角度为向前平行拍摄,则目视线位置就是图像中的摄像头的安装高度,通过该设置能够简单地将真实时间的测量值转换到待判断图像中,进一步提升判断的效率。

进一步地,根据所述摄像头位置以及目视线位置与人体位置的高度差得到危险动作判断结果包括:

根据所述安装高度获取对应的爬高高度阈值以及摔倒高度阈值;

判断所述高度差是否大于所述爬高高度阈值,若是,则输出爬高预警;

判断所述高度差是否小于所述摔倒高度阈值,若是,则输出摔倒预警。

进一步地,目视线位置即待判断图像中摄像头位置,目视线位置与人体位置的高度差则可以转换为真实世界中安装高度和人体位置的高度差,从而得到人体位置所处的高度,则可以辅助判断是否处于危险姿态中,进一步提高判断结果的准确性。

参照图3,一种危险动作检测终端,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的一种危险动作检测方法中的各个步骤。

本发明上述一种危险动作检测方法及终端能够适用于检测是否出现危险情况的情景,尤其是只配备了少量视觉设备的场景中,例如场景中只安装了摄像头而未安装雷达等其他探测器的场景,以下通过具体实施方式进行说明。

请参照图1-2,本发明的实施例一为:

一种危险动作检测方法,包括步骤:

S1、获取待判断图片,并将所述待判断图片输入骨架关键点检测网络得到人体关键点;

在一种可选的实施方式中,获取待判断图片后,对图片进行预处理,将预处理后的待判断图片输入骨架关键点检测网络;预处理包括例如修改图片大小、转换图片格式等,现有技术中有较为完善的图片在送入深度学习网络前的预处理方法,在此不再赘述;

在一种可选的实施方式中,通过openpose模型作为骨架关键点检测网络得到人体关键点,人体关键点包括左眼、右眼、鼻子、左耳、右耳、左肩、右肩、左手肘、右手肘、左手、右手、左臀、右臀、左膝、右膝、左足、右足和脖子共18个,其中脖子可以为肩颈连接点,方便识别;因场景中可能有其他物体遮挡摄像头视野,若存在未检测到的人体关键点则标记为空;其中,将openpose模型中原始的VGG19网络替换为MobileNetv1网络,MobileNetv1网络相较于VGG19的参数量更小,能够节约计算资源,加快模型的计算效率,并且MobileNetv1网络采用DW卷积,大大减少模型计算量;

S2、获取所述人体关键点中预设的危险动作关键点集合,根据所述危险动作关键点集合计算人体位姿,包括:

S21、其中,危险动作关键点集合包括至少两个危险动作关键点,获取人体关键点中预设的危险动作关键点包括:

S211、获取人体关键点中预设的与危险动作关键点相关的左关键点集合以及右关键点集合;

在一种可选的实施方式中,危险动作关键点包括腿部关键点集合(左臀、右臀、左膝、右膝、左足、右足);

在一种可选的实施方式中,危险动作关键点还包括上身关键点(例如左肩、右肩);

S212、遍历所述左关键点集合,当遍历到目标左关键点(x

x=(x

y=(y

S213、遍历结束后,获取所有所述危险动作关键点组成危险动作关键点集合,还包括:

S2131、若所述目标左关键点不存在对应的目标右关键点,则以所述目标左关键点作为危险动作关键点;或丢弃所述左关键点;

S2132、若遍历结束后所述右关键点集合中还存在未被遍历的右关键点,则以未被遍历的所述右关键点作为危险动作关键点;或丢弃所述右关键点;

若左右关键点无法互相匹配,将其单独作为危险动作关键点与其他取中间值的数相比,会存在误差,若直接丢弃能够进一步减少数据量并且摒除这一误差,但若将其单独加入危险动作关键点能够减少信息的损失量,也能提高最终计算结果的准确度,故可根据实际情况进行选择操作;因有时图片会被遮挡,故会出现本应左右对应的关键点不对应的情况;

S22、计算每两个所述危险动作关键点之间的正切值:分别获取两个危险动作关键点的坐标(x

S23、所述若所述人体位姿符合危险位姿包括:

S24、若大于第一预设数量的所述正切值均小于摔倒阈值,则所述人体位姿符合摔倒特征;

S25、若大于第二预设数量的所述正切值均大于爬高阈值,则所述人体位姿符合爬高特征;

在一种可选的实施方式中,在计算资源充足时也可通过计算特定人体关键点之间的夹角从而精确确定出动作,例如根据臀关键点与膝关键点连线以及膝关键点与脚关键点之间的连线的夹角确定是否处于跪姿,进一步地,还可以区分左右,判断是否处于走路状态等,本实施例中也可通过上述简化人体关键点为危险关键点并合并左右的方式减小计算量,提高效率;

S3、若所述人体位姿符合危险位姿,则获取拍摄所述待判断图片的摄像头的摄像头位置以及所述摄像头的目视线在所述待判断图片中的目视线位置;并根据所述人体关键点计算人体在所述待判断图片中的人体位置,包括:

S31、获取摄像头的安装高度;获取所述待判断图片的水平中心线,作为所述目视线位置;

在一种可选的实施方式中,摄像头的拍摄角度固定水平方向,例如将摄像头安装在能够竖直方向移动的云台上实现不同高度的拍摄,可以将摄像头安装在扫地机器人等可移动的智能设备上实现对各个房间的巡视;

具体的,例如通过调整云台让摄像头的目视线与地面平行,此时获取的图片的水平中心线便是机器人云台的目视线位置,其两端点为(0,h/2),(w,h/2),w、h分别为图片的宽和高;

S32,以人体关键点组成的集合的中心点作为图片中的人体位置,或,以人体关键点中的最低点作为图片中的人体位置,其中最低点可是待判断图片中所有人体关键点中最靠近地面的点,也可以是人体自然站立状态下最靠近地面的点;例如图中人体姿态是在地上的坐姿,待判断图片中所有人体关键点中最靠近地面的点包括臀,人体自然站立状态下最靠近地面的点是脚;以人体关键点中的最低点作为图片中的人体位置能够避免漏判断的情况,例如坐在高处,垂下来的脚没有达到爬高高度阈值;以人体自然站立状态下最靠近地面的点进行判断能够减少误判的情况,例如坐在50cm高的地方不算爬高,但若是站立在50cm高的地方就存在危险;

在一种可选的实施方式中,若人体位姿符合摔倒特征,则以人体关键点组成的集合的中心点作为图片中的人体位置或直接取左臀和右臀两个关键点的中心点作为人体位置,进一步简化计算过程;若人体位姿符合爬高特征,则以人体关键点中的最低点作为图片中的人体位置,能够适配摔倒和爬高的不同特征,进一步提升计算的准确性;

S4、根据所述摄像头位置以及目视线位置与人体位置的高度差得到危险动作判断结果,包括:

S41、根据所述安装高度获取对应的爬高高度阈值以及摔倒高度阈值;

在一种可选的实施方式中,可以事先标定待判断图像中物体离目视线位置的距离与真实距离的关系函数,并根据真实爬高高度阈值以及摔倒高度阈值得到图像中的爬高高度阈值以及摔倒高度阈值(例如像素为单位),则在获取待判断图片中人体位置与目视线位置的距离后,可以直接判断是否需要预警;例如,安装高度为50cm,真实爬高高度阈值为2米,根据关系函数得到对应图像中爬高高度阈值为150像素,即高于目视线150像素的物体实际高度为2米;因同一摄像头的分辨率是可是设置为固定的,故此处不考虑分辨率的影响,若更换其他摄像头或改变摄像头的安装高度只需要重新标定一次关系函数就能够使用;

在一种可选的实施方式中,设置真实爬高高度阈值为50cm,对应图像中爬高高度阈值为0像素,设置真实摔倒高度阈值为15cm,对应图像中摔倒高度阈值为-35像素(正数表示在目视线位置远离地面的一侧,负数表示在目视线位置靠近地面的一侧,方便记录);

S42、判断所述高度差是否大于所述爬高高度阈值,若是,则输出爬高预警;

S43、判断所述高度差是否小于所述摔倒高度阈值,若是,则输出摔倒预警

因水平方向拍摄在将待判断图像上的高度差转换为真实世界高度差时无需考虑摄像头的旋转角度,能够进一步提高计算的效率;图像中位置与真实世界位置的其他映射方式在现有技术中已经较为成熟,在此不再赘述;

以本发明中的方法,如当躺趴状态人体的臀部高度距离地面大约15厘米,机器人摄像头高度若大于15厘米,那么人体的臀部会低于摄像头,机器人摄像头平视情况下,人体臀部关键点会落在目视线的下方,即可以以目视线位置作为评判的标准,若躺趴状态人体臀部高度高出摄像头一定距离,就可以判定人体趴躺在高处,而非地面上,极大可能是床上或沙发上;同理,对于站立或者跪着的状态,首先计算出机器人目视线在采集图片中的位置,然后根据目视线位置与站立或者跪着状态人体的高度差可以区分站立或者跪着状态人体是在一定高度上还是在接近地面上。这个时候如果有脚部关键点,就可以比较脚部和机器人目视线高度差,若有一定的高度差,即站立的地方远远高于机器人,更高于地面;若脚部关键点和机器人目视线高度很小或者低于目视线高度,这说明脚部是在很低的位置或者地面上。当然如果没有脚部关键点,算法会比较膝盖关键点和机器人目视线高度,通过设定新的高度差也可以区分是站立或者跪在很高的地方;从而就可以区分趴躺在地面上还是高处,以得到是摔倒还是躺在床上或者沙发上睡觉,也可以区分站立或者跪着的状态是在地面不远处还是高处,以确定是爬高或者非爬高的状态。

请参照图3,本发明的实施例二为:

一种危险动作检测终端1,包括处理器2、存储器3及存储在存储器3上并可在所述处理器2上运行的计算机程序,所述处理器2执行所述计算机程序时实现实施例一中的各个步骤。

综上所述,本发明提供了一种危险动作检测方法及终端,通过获取到待判断图片之后,通过骨架关键点检测网络得到其中的人体关键点,再从人体关键点中提取出预设的危险动作关键点集合,危险动作关键点集合可根据经验设定,也可根据相关性模型寻找,通过排除与危险动作关联性较少的人体关键点减少计算数据量,加快了计算过程,同时在确定待判断图片中的人体位姿符合预设爬高特征或摔倒特征的情况下,进一步获取人体位置和摄像头的目视位置,根据待判断图片中人体位置和摄像头位置之间的高度差对人体实际位置进行预测,从而实现排除在床上躺卧的正常情况,即高度差满足预设高度阈值的情况下才进行告警,提高危险姿态判断的准确性。

以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

相关技术
  • 一种危险物品检测的方法、装置及移动终端
  • 一种触控动作识别方法、装置及终端设备
  • 一种故障原因检测方法、故障原因检测装置及终端设备
  • 非接触式动作检测方法、动作检测装置及危险情境检测方法
  • 非接触式动作检测方法、动作检测装置及危险情境检测方法
技术分类

06120116493716