一种手部检测方法及装置与流程

文档序号:20953028发布日期:2020-06-02 20:15阅读:399来源:国知局
一种手部检测方法及装置与流程

本发明涉及图像处理技术领域,具体而言,本发明涉及一种手部检测方法及装置。



背景技术:

在某些监控场景下,需要获取监控图像中的人的手部图像,以根据手部图像预测是否存在不安全行为,例如,通过手部图像,判断在公共场所是否手持刀/枪等危险物品,或者,在电网工作环境下是否佩戴安全手套,或者,在加油站是否抽烟,或者,在驾驶过程中是否打电话等。

手部检测是后续预测是否存在不安全行为的关键。

现有技术中,一种手部检测方法是采用肤色进行手部检测,然而,当手部佩戴了手套的场景时,难以检测到手部。另一种手部检测方法是检测五指的边缘,然而,当手部轮廓不明显例如手部握拳时,难以检测到五指的边缘。还有一种手部检测方法是采用光流法,根据动作信息检测手部,但是这种检测方法只适用于手部运动的简单场景。

也就是说,上述现有的手部检测方法适用范围均较小,鲁棒性差,因而,如何提高手部检测方法的鲁棒性是亟待解决的问题。



技术实现要素:

本发明实施例要解决的技术问题是提供一种手部检测方法及装置,用于解决现有的手部检测方法鲁棒性弱的问题。

为解决上述技术问题,本发明实施例提供的一种手部检测方法,包括:

获取待分析的人体图像;

对所述人体图像进行人体姿势估计处理,确定所述人体图像中的人体关键点,所述人体关键点至少包括手腕关键点;

对所述人体图像进行语义分割处理,从所述人体图像中分割出人体区域;

根据所述手腕关键点和所述人体区域,确定所述人体图像中的手部区域。

可选的,所述人体关键点还包括手肘关键点;所述根据所述手腕关键点和所述人体区域,确定所述人体图像中的手部区域包括:

连接所述手腕关键点和手肘关键点,得到连线;

确定与所述连线垂直且经过所述手腕关键点的区域分割线;

利用所述区域分割线将所述人体区域分割成手部区域和人体其他区域。

可选的,所述利用所述区域分割线将所述人体区域分割成手部区域和人体其他区域包括:

将位于所述区域分割线的远离与所述手肘关键点一侧的人体区域作为手部区域。

可选的,所述根据所述手腕关键点和所述人体区域,确定所述人体图像中的手部区域之后,还包括:

根据所述手部区域,确定手部是否持有指定物品。

可选的,所述根据所述手腕关键点和所述人体区域,确定所述人体图像中的手部区域之后,还包括:

根据所述手部区域,确定手部是否佩戴手套。

本发明还提供一种手部检测装置,包括:

图像获取模块,用于获取待分析的人体图像;

人体姿势估计模块,用于对所述人体图像进行人体姿势估计处理,确定所述人体图像中的人体关键点,所述人体关键点至少包括手腕关键点;

语义分割模块,用于对所述人体图像进行语义分割处理,从所述人体图像中分割出人体区域;

手部区域确定模块,用于根据所述手腕关键点和所述人体区域,确定所述人体图像中的手部区域。

可选的,所述人体关键点还包括手肘关键点;

所述手部区域确定模块,用于连接所述手腕关键点和手肘关键点,得到连线;确定与所述连线垂直且经过所述手腕关键点的区域分割线;利用所述区域分割线将所述人体区域分割成手部区域和人体其他区域。

可选的,所述手部区域确定模块,用于将位于所述区域分割线的远离与所述手肘关键点一侧的人体区域作为手部区域。

可选的,所述装置还包括:

第一确定模块,用于根据所述手部区域,确定手部是否持有指定物品。

可选的,所述装置还包括:

第二确定模块,用于根据所述手部区域,确定手部是否佩戴手套。

与现有技术相比,本发明实施例提供的手部检测方法及装置通过对人体图像进行人体姿势估计和语义分割处理,分别得到人体图像中的手腕关键点和人体区域,由于确定了手腕关键点,手部区域位于手腕关键点附近,结合手腕关键点以及语义分割出的人体区域,可以快速准确地确定手部区域。与现有的肤色检测方法相比,即使手部佩戴了手套,也可以准确识别出手部区域,与现有的检测五指边缘的方法相比,即使手部轮廓不明显,例如手部握拳时,也可以准确识别出手部区域,与现有的光流法相比,即使手部不运动,也能够准确识别出手部区域,可见,与现有方法相比,应用场景更广,提高了手部检测方法的鲁棒性。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一实施例的手部检测方法的流程示意图;

图2为本发明另一实施例的手部检测方法的流程示意图;

图3为采用图2所示的手部检测方法对人体图像进行处理的流程示意图;

图4为本发明一实施例的手部检测装置的结构示意图;

图5为本发明另一实施例的手部检测装置的结构示意图。

具体实施方式

为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。在下面的描述中,提供诸如具体的配置和组件的特定细节仅仅是为了帮助全面理解本发明的实施例。因此,本领域技术人员应该清楚,可以对这里描述的实施例进行各种改变和修改而不脱离本发明的范围和精神。另外,为了清楚和简洁,省略了对已知功能和构造的描述。

应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。

在本发明的各种实施例中,应理解,下述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

请参考图1,图1为本发明一实施例的手部检测方法的流程示意图,该手部检测方法包括:

步骤11:获取待分析的人体图像。

本发明实施例中的人体图像可来自于监控摄像头、电脑或数码照相机等设备。

待分析的人体图像可以是深度图像,也可以是二维的rgb图像。

步骤12:对所述人体图像进行人体姿势估计处理,确定所述人体图像中的人体关键点,所述人体关键点至少包括手腕关键点。

人体姿势估计是借助计算机视觉和图像处理的技术,获取图像中人体各关键点的位置,实现对人体姿势的描述和理解。人体姿势估计的关键在于人体关键点的确定,人体关键点通常包括:鼻尖、眼镜、耳廓中间、嘴角、肩部关节的中间、手肘、手腕、手尖(手末端整体的中间位置)、大腿根部、膝盖、脚踝、脚尖、锁骨交点、上身中间位置、盆骨、脖子和头顶等。本发明实施例中,至少确定人体图像中的手腕。

本发明实施例中,可以采用多种类型的算法模型对人体图像进行人体姿势估计处理,例如fasterr-cnn、maskr-ccn或posenet模型等。

下面对上述几种算法进行简单说明:

fasterr-cnn是一种目标检测算法,是r-cnn的演进版本,r-cnn全称是regionswithcnnfeatures,fasterr-cnn的工作流程可以如下:1)将待处理的图像送入预训练好的分类网络中获取该图像对应的特征图;2)在特征图上的每一个锚点上取n个候选的roi(regionofinterest,感兴趣区域),并根据相应的比例将其映射到原始图像中;3)将这些候选的roi输入到rpn(regionproposalnetwork,区域候选网络)中,rpn对这些roi进行分类(即确定这些roi是前景还是背景),同时对其进行初步回归(即计算这些前景roi与真实目标之间的bb的偏差值),然后做nms(非极大值抑制,即根据分类的得分对这些roi进行排序,然后选择其中的前n个roi);4)对这些不同大小的roi进行roipooling操作(即将其映射为特定大小的feature_map),输出固定大小的feature_map;5)将其输入检测网络中,然后进行分类(区分不同的类别,n+1类,多余的一类是背景,用于删除不准确的roi),同时进行bb回归(精确的调整预测的roi和gt的roi之间的偏差值),从而输出一个bb集合。

maskr-cnn是一个实例分割(instancesegmentation)算法,可以用来做目标检测、目标实例分割和目标关键点检测。maskr-cnn算法的思路是在原始faster-rcnn算法的基础上面增加了fcn(fullyconvolutionalnetwork)来产生对应的mask分支,即faster-rcnn+fcn。fcn算法是一个经典的语义分割算法,可以对图片中的目标进行准确的分割。

posenet是利用深度学习进行视觉定位,其目的是通过输入一张彩色图像判断相机的位置以及姿态,能够知道相机的姿态,而且只需要5ms就可定位成功。

当然,可以理解的是,本发明实施例中,还可以采用其他人体姿势估计算法,获得人体关键点,在此不再一一说明。

步骤13:对所述人体图像进行语义分割处理,分割出所述人体图像中的人体区域。

图像语义分割就是机器自动从图像中分割出对象区域,并识别其中的内容。本发明实施例中,可以采用多种类型的算法模型对人体图像进行语义分割,例如,maskr-ccn、pspnet或segnet等。

pspnet的全称为pyramidsceneparsingnetwork(金字塔场景解析网络),对于场景分类(sceneparsing),主流的方法为全卷积网络即fcn,然而fcn的一个缺点就是无法利用全局场景类别信息(globalscenecategoryclues)。在复杂的场景特征获取中,pspnet可以采用金字塔池化(spatialpyramidpooling)来获的全局场景的特征。其运行过程如下:对于输入图像,首先通过一个resnet网络提取图像特征(featuremap);之后将得到的featuremap输出到一个全局pool层,再通过一个pyramidpoolingmodule获得多个sub-region的特征表示,之后通过上采样(upsampling),并串联层(concat)所有特征,得到最后的特征表示向量,从而获得图像的局部和全局特征。

segnet与fcn非常相似,新颖之处在于解码器对其较低分辨率的输入特征图进行上采样的方式。

当然,可以理解的是,本发明实施例中,还可以采用其他语义分割算法,获得人体区域,在此不再一一说明。

步骤14:根据所述手腕关键点和所述人体区域,确定所述人体图像中的手部区域。

本发明实施例中,通过对人体图像进行人体姿势估计和语义分割处理,分别得到人体图像中的手腕关键点和人体区域,由于确定了手腕关键点,手部区域位于手腕关键点附近,结合手腕关键点以及语义分割出的人体区域,可以快速准确地确定手部区域。与现有的肤色检测方法相比,即使手部佩戴了手套,也可以准确识别出手部区域,与现有的检测五指边缘的方法相比,即使手部轮廓不明显,例如手部握拳时,也可以准确识别出手部区域,与现有的光流法相比,即使手部不运动,也能够准确识别出手部区域,可见,与现有方法相比,应用场景更广,提高了手部检测方法的鲁棒性。

本发明实施例中,得到手腕关键点和人体区域之后,可以通过多种方式确定人体图像中的手部区域,下面举例进行说明。

请结合图2和图3,图2为本发明另一实施例的手部检测方法的流程示意图,图3为采用图2所示的手部检测方法对人体图像进行处理的流程示意图,该手部检测方法包括:

步骤21:获取待分析的人体图像a,请参考图3中的(1);

步骤22:参考图3中的(2a),对所述人体图像a进行人体姿势估计处理,确定所述人体图像中的人体关键点,所述人体关键点至少包括手腕关键点k1和手肘关键点k2;

步骤23:参考图3中的(3),连接所述手腕关键点k1和手肘关键点k2,得到连线l1;并确定与所述连线l1垂直且经过所述手腕关键点k1的区域分割线l2;

步骤24:参考图3中的(2b),对所述人体图像进行语义分割处理,分割出所述人体图像中的人体区域s;

步骤25:利用所述区域分割线l2将所述人体区域s分割成手部区域s1和人体其他区域。

本发明实施例中,利用手腕关键点和手肘关键点的连线,确定手部区域与人体其他区域的区域分割线,从而确定手部区域,该方法根据人体自然特征,确定方法简单有效。

本发明实施例中,可选的,所述利用所述区域分割线将所述人体区域分割成手部区域和人体其他区域包括:将位于所述区域分割线远离与所述手肘关键点一侧的人体区域作为手部区域。或者,也可以采用其他方式确定,例如,将位于区域分割线一侧的面积小的人体区域作为手部区域,等等。

上述实施例中,例如手腕关键点和手肘关键点,确定手部区域,当然在本发明的其他一些实施例中,也不排除采用其他方式确定手部区域,例如,确定了手腕关键点之后,结合肤色检测方法,或者,结合其他手部检测器模型,确定手部区域。

在本发明的一些实施例中,在确定手部区域之后,可以根据确定的手部区域,判断手部是否持有指定物品(例如刀/枪等),从而预测是否有不安全行为,即,所述根据所述手腕关键点和所述人体区域,确定所述人体图像中的手部区域之后,还可以包括:

步骤15a:根据所述手部区域,确定手部是否持有指定物品。

在本发明的一些实施例中,可以通过手部区域的图像,识别手部姿势,根据手部姿势,确定手部是否持有指定物品。

在本发明的另外一些实施例中,可以确定所述人体图像中所述手部区域周边的感兴趣区域(roi),对所述感兴趣区域进行分析,确定手部是否持有指定物品。

或者,结合手部姿势和手部区域周边的感兴趣区域,确定手部是否持有指定物品。

在本发明的一些实施例中,在确定手部区域之后,还可以根据确定的手部区域,判断手部是否佩戴手套,从而判定是否安全作业,即,所述根据所述手腕关键点和所述人体区域,确定所述人体图像中的手部区域之后,还可以包括:

步骤15b:根据所述手部区域,确定手部是否佩戴手套。

本发明实施例中,可以根据肤色检测方式,确定手部是否佩戴手套。

基于同一发明构思,本发明实施例还提供一种手部检测装置,请参考图4,该手部检测装置40包括:

图像获取模块41,用于获取待分析的人体图像;

人体姿势估计模块42,用于对所述人体图像进行人体姿势估计处理,确定所述人体图像中的人体关键点,所述人体关键点至少包括手腕关键点;

语义分割模块43,用于对所述人体图像进行语义分割处理,从所述人体图像中分割出人体区域;

手部区域确定模块44,用于根据所述手腕关键点和所述人体区域,确定所述人体图像中的手部区域。

本发明实施例中,通过对人体图像进行人体姿势估计和语义分割处理,分别得到人体图像中的手腕关键点和人体区域,由于确定了手腕关键点,手部区域位于手腕关键点附近,结合手腕关键点以及语义分割出的人体区域,可以快速准确地确定手部区域。与现有的肤色检测方法相比,即使手部佩戴了手套,也可以准确识别出手部区域,与现有的检测五指边缘的方法相比,即使手部轮廓不明显,例如手部握拳时,也可以准确识别出手部区域,与现有的光流法相比,即使手部不运动,也能够准确识别出手部区域,可见,与现有方法相比,应用场景更广,提高了手部检测方法的鲁棒性。

在本发明的一些实施例中,所述人体关键点还包括手肘关键点;所述手部区域确定模块44用于连接所述手腕关键点和手肘关键点,得到连线;确定与所述连线垂直且经过所述手腕关键点的区域分割线;利用所述区域分割线将所述人体区域分割成手部区域和人体其他区域。

在本发明的一些实施例中,所述手部区域确定模块44用于将位于所述区域分割线的远离与所述手肘关键点一侧的人体区域作为手部区域。

在本发明的一些实施例中,所述手部检测装置还包括:

第一确定模块,用于根据所述手部区域,确定手部是否持有指定物品。

在本发明的一些实施例中,所述手部检测装置还包括:

第二确定模块,用于根据所述手部区域,确定手部是否佩戴手套。

请参考图5,图5为本发明又一实施例的手部检测装置的结构示意图,该手部检测装置50包括:处理器51和存储器52。在本发明实施例中,手部检测装置50还包括:存储在存储器52上并可在处理器51上运行的计算机程序,计算机程序被处理器51执行时实现如下步骤:

获取待分析的人体图像;

对所述人体图像进行人体姿势估计处理,确定所述人体图像中的人体关键点,所述人体关键点至少包括手腕关键点;

对所述人体图像进行语义分割处理,从所述人体图像中分割出人体区域;

根据所述手腕关键点和所述人体区域,确定所述人体图像中的手部区域。

可选的,所述人体关键点还包括手肘关键点;计算机程序被处理器51执行时还可实现如下步骤:

所述根据所述手腕关键点和所述人体区域,确定所述人体图像中的手部区域包括:

连接所述手腕关键点和手肘关键点,得到连线;

确定与所述连线垂直且经过所述手腕关键点的区域分割线;

利用所述区域分割线将所述人体区域分割成手部区域和人体其他区域。

可选的,计算机程序被处理器51执行时还可实现如下步骤:

所述利用所述区域分割线将所述人体区域分割成手部区域和人体其他区域包括:

将位于所述区域分割线的远离与所述手肘关键点一侧的人体区域作为手部区域。

可选的,计算机程序被处理器51执行时还可实现如下步骤:

所述根据所述手腕关键点和所述人体区域,确定所述人体图像中的手部区域之后,还包括:

根据所述手部区域,确定手部是否持有指定物品。

可选的,计算机程序被处理器51执行时还可实现如下步骤:

所述根据所述手腕关键点和所述人体区域,确定所述人体图像中的手部区域之后,还包括:

根据所述手部区域,确定手部是否佩戴手套。

本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现上述手部检测方法方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(read-onlymemory,简称rom)、随机存取存储器(randomaccessmemory,简称ram)、磁碟或者光盘等。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1