人体属性识别方法、装置、系统及存储介质与流程

文档序号:16070726发布日期:2018-11-24 13:11阅读:239来源:国知局

本发明涉及模式识别技术领域,更具体地涉及一种人体属性识别方法、装置、系统及存储介质。

背景技术

图像的人体属性识别是一种对待识别图像进行人体检测和人体属性分析的技术,其中人体属性可以包括性别、年龄、衣着,携带物品等人体特征。针对从图像中检测出的每个行人,可以返回其人体属性值。

因为图像拍摄的视角、光线等环境不同,以及在图像中行人之间或者行人与背景之间可能存在的遮挡等问题,所以人体属性识别是非常困难的。现有的人体属性识别方法大多通过卷积神经网络直接对整张图像进行识别,由此,识别准确率较低。



技术实现要素:

考虑到上述问题而提出了本发明。本发明提供了一种人体属性识别方法、装置、系统及存储介质。

根据本发明一方面,提供了一种人体属性识别方法,包括:

获取待识别图像;

在所述待识别图像中提取行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在所述待识别图像中的位置信息;以及

根据所述多个骨架特征点在所述待识别图像中的位置信息和所述待识别图像,识别所述行人的人体属性。

示例性地,所述根据所述多个骨架特征点在所述待识别图像中的位置信息和所述待识别图像,识别所述行人的人体属性包括:

根据所述多个骨架特征点在所述待识别图像中的位置信息,从所述待识别图像中获取多个待识别子图,其中每个待识别子图包括所述多个骨架特征点中的一个骨架特征点;以及

根据所述多个待识别子图和所述骨架信息,识别所述行人的人体属性。

示例性地,所述根据所述多个骨架特征点在所述待识别图像中的位置信息,从所述待识别图像中获取多个待识别子图包括:

对于所述多个骨架特征点中的每一个,以该骨架特征点的位置为中心,从所述待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图。

示例性地,所述以该骨架特征点的位置为中心,从所述待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图包括:

针对所述待识别图像,以该骨架特征点的位置为中心确定所述预设尺寸的待识别子图的区域;

对于所述待识别子图的区域完全落在所述待识别图像中的情况,确定所述待识别图像在该区域内的部分图像为所述预设尺寸的待识别子图;以及

对于所述待识别子图的区域不完全落在所述待识别图像中的情况,根据所述待识别图像在该区域内的部分图像对所述区域进行扩充,以形成所述预设尺寸的待识别子图。

示例性地,所述根据所述多个骨架特征点在所述待识别图像中的位置信息和所述待识别图像,识别所述行人的人体属性,包括:

根据所述多个骨架特征点在所述待识别图像中的位置信息和所述待识别图像,利用神经网络识别所述行人的人体属性。

示例性地,所述人体属性包括多个属性类别,所述神经网络包括多个分类器,每个分类器用于输出所述多个属性类别中的一个。

示例性地,所述在所述待识别图像中提取行人的骨架信息包括:

对所述待识别图像进行行人检测,以获得至少一个行人检测框,其中所述至少一个行人检测框中的每个行人检测框用于指示所述待识别图像中包括一个行人的区域;以及

对所述待识别图像基于所述每个行人检测框进行骨架分析,以获取所述每个行人检测框中行人的骨架信息。

示例性地,所述对所述待识别图像进行行人检测以获得至少一个行人检测框包括:

提取所述待识别图像的人体特征的热度图;

使用不同滑动窗口截取所述热度图中的一部分,以作为待检测部分;以及

针对所述待检测部分进行行人检测,并且根据行人检测结果确定所述至少一个行人检测框。

示例性地,所述对所述待识别图像基于所述每个行人检测框进行骨架分析包括:

提取所述待识别图像的骨架特征图;

对所述骨架特征图进行骨架分析,以获得所述骨架特征图中的骨架信息;

基于所述每个行人检测框,确定所述每个行人检测框对应的骨架信息。

示例性地,所述骨架特征点包括以下人体关键点中的一个或多个:头部中心、左肩和右肩、左臂肘关节和右臂肘关节、胸部或背部、臀部、左腿膝关节、左腿踝关节、右腿膝关节和右腿踝关节。

根据本发明另一方面,还提供了一种人体属性识别装置,包括:

图像获取模块,用于获取待识别图像;

骨架提取模块,用于在所述待识别图像中提取行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在所述待识别图像中的位置信息;以及

属性识别模块,用于根据所述多个骨架特征点在所述待识别图像中的位置信息和所述待识别图像,识别所述行人的人体属性。

根据本发明又一方面,还提供了一种人体属性识别系统,包括处理器和存储器,其中,所述存储器中存储有计算机程序指令,所述计算机程序指令被所述处理器运行时用于执行以下步骤:

获取待识别图像;

在所述待识别图像中提取行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在所述待识别图像中的位置信息;以及

根据所述多个骨架特征点在所述待识别图像中的位置信息和所述待识别图像,识别所述行人的人体属性。

根据本发明再一方面,还提供了一种存储介质,在所述存储介质上存储了程序指令,所述程序指令在运行时用于执行以下步骤:

获取待识别图像;

在所述待识别图像中提取行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在所述待识别图像中的位置信息;以及

根据所述多个骨架特征点在所述待识别图像中的位置信息和所述待识别图像,识别所述行人的人体属性。

根据本发明实施例的人体属性识别方法、装置、系统及存储介质,首先提取行人的骨架信息,然后根据骨架信息识别行人的人体属性。上述方案中,增强了对行人的人体结构的整体理解能力,有效减少了图像中背景等因素对人体属性识别的干扰,显著提高了识别准确率。

附图说明

通过结合附图对本发明实施例进行更详细的描述,本发明的上述以及其它目的、特征和优势将变得更加明显。附图用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与本发明实施例一起用于解释本发明,并不构成对本发明的限制。在附图中,相同的参考标号通常代表相同部件或步骤。

图1示出了用于实现根据本发明实施例的人体属性识别方法和装置的示例电子设备的示意性框图;

图2示出根据本发明一个实施例的人体属性识别方法的示意性流程图;

图3示出了根据本发明一个实施例的在待识别图像中提取行人的骨架信息步骤的示意性流程图;

图4示出了根据本发明一个实施例的行人检测步骤的示意性流程图;

图5示出了根据本发明一个实施例的骨架分析步骤的示意性流程图;

图6示出了根据本发明一个实施例的识别行人的人体属性步骤的示意性流程图;

图7示出了根据本发明一个实施例的待识别图像;

图8示出了根据本发明一个实施例的人体属性识别装置的示意性框图;以及

图9示出了根据本发明一个实施例的人体属性识别系统的示意性框图。

具体实施方式

为了使得本发明的目的、技术方案和优点更为明显,下面将参照附图详细描述根据本发明的示例实施例。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是本发明的全部实施例,应理解,本发明不受这里描述的示例实施例的限制。基于本发明中描述的本发明实施例,本领域技术人员在没有付出创造性劳动的情况下所得到的所有其它实施例都应落入本发明的保护范围之内。

为了解决上文所述的问题,本发明实施例提供一种人体属性识别方法。一方面,人体属性主要包括行人的性别、衣着、携带物品等人体特征。如果直接对整张图像进行人体属性识别,则必然受到待识别图像中行人以外的背景的影响,导致识别的准确率低下。因为期望获得的是人体的属性,所以仅针对待识别图像中的行人部分而非整张图像进行人体属性识别则可以显著提高识别的准确率。另一方面,骨架是人体的基础,基于图像中行人的骨架信息确定行人的人体属性则增强了对人体结构的整体理解,更可保证识别的准确率。因此,在上述人体属性识别方法中,首先,在待识别图像中提取行人的骨架信息。然后,根据骨架信息识别图像中行人的人体属性。上述方案能够显著提高人体属性识别的准确率。

首先,参照图1来描述用于实现根据本发明实施例的人体属性识别方法和装置的示例电子设备100。

如图1所示,电子设备100包括一个或多个处理器102、一个或多个存储装置104、输入装置106、输出装置108和图像采集装置110,这些组件通过总线系统112和/或其它形式的连接机构(未示出)互连。应当注意,图1所示的电子设备100的组件和结构只是示例性的,而非限制性的,根据需要,所述电子设备也可以具有其他组件和结构。

所述处理器102可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以控制所述电子设备100中的其它组件以执行期望的功能。

所述存储装置104可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器102可以运行所述程序指令,以实现下文所述的本发明实施例中(由处理器实现)的客户端功能以及/或者其它期望的功能。在所述计算机可读存储介质中还可以存储各种应用程序和各种数据,例如所述应用程序使用和/或产生的各种数据等。

所述输入装置106可以是用户用来输入指令的装置,并且可以包括键盘、鼠标、麦克风和触摸屏等中的一个或多个。

所述输出装置108可以向外部(例如用户)输出各种信息(例如图像和/或声音),并且可以包括显示器、扬声器等中的一个或多个。

所述图像采集装置110可以采集图像(包括视频帧),并且将所采集的图像存储在所述存储装置104中以供其它组件使用。图像采集装置110可以是监控摄像头。应当理解,图像采集装置110仅是示例,电子设备100可以不包括图像采集装置110。在这种情况下,可以利用其他图像采集装置采集人体属性识别图像,并将采集的图像发送给电子设备100。

示例性地,用于实现根据本发明实施例的人体属性识别方法和装置的示例电子设备可以在诸如个人计算机或远程服务器等的设备上实现。

下面,将参考图2描述根据本发明实施例的人体属性识别方法。图2示出根据本发明一个实施例的人体属性识别方法200的示意性流程图。如图2所示,该方法200包括以下步骤。

步骤s210,获取待识别图像。

待识别图像可以是任何合适的、需要进行人体属性识别的图像,例如针对目标区域采集到的图像。待识别图像可以是摄像头等图像采集装置采集到的原始图像,也可以是对原始图像进行预处理之后获得的图像。该预处理操作可以包括滤波等去噪操作。

待识别图像可以由客户端设备(诸如包括摄像头的图像采集设备)发送到电子设备100以由电子设备100的处理器102进行处理,也可以由电子设备100包括的图像采集装置110(例如摄像头)采集并传送到处理器102进行处理。

步骤s220,在步骤s210所获取的待识别图像中提取行人的骨架信息。行人的骨架信息包括骨架中的多个骨架特征点在待识别图像中的位置信息,其可以作为确定行人在待识别图像中的位置的依据。

可选地,骨架特征点包括以下人体关键点中的一个或多个:头部中心、左肩和右肩、左臂肘关节和右臂肘关节、胸部或背部、臀部、左腿膝关节、左腿踝关节、右腿膝关节和右腿踝关节等。上述人体关键点可以从某个角度勾画行人。例如胸部或背部可以帮助确定行人的上身位置,进而可以帮助识别行人的上衣颜色。又例如臀部、左腿膝关节、左腿踝关节、右腿膝关节和右腿踝关节可以帮助确定行人的下身位置,进而可以帮助识别行人的裤子颜色。骨架特征点在行人身上所处的位置和数目可以根据需要设定,本申请对此不进行限制。

步骤s230,根据步骤s220所提取的多个骨架特征点在待识别图像中的位置信息和该待识别图像,识别行人的人体属性。

根据骨架特征点在待识别图像中的位置信息,可以大体确定行人在待识别图像中的位置。例如,可以将待识别图像中距离骨架特征点小于特定阈值的像素认为是属于行人的像素。可以根据这些属于行人的像素来识别行人的人体属性。

可选地,上述步骤s230可以利用神经网络来识别行人的人体属性,例如卷积神经网络(cnn)。将骨架特征点在待识别图像中的位置信息和待识别图像输入到神经网络中,以识别待识别图像中的行人的人体属性。神经网络是一种能够自主学习的网络,采用神经网络可以准确、高效地识别行人的人体属性。可选地,在人体属性识别方法中还可以包括利用训练图像训练前述神经网络。训练图像可以是其中已经标注了行人的人体属性的图像。可选地,该训练图像中还可以标注其他信息,例如行人的骨架特征点等。

可选地,人体属性包括多个属性类别,例如性别、年龄、上衣颜色、裤装颜色、携带物品等。用于实现步骤s230的神经网络可以包括多个分类器,每个分类器用于输出前述多个属性类别中的一个。由此,可以用一个神经网络,完成行人所有人体属性的识别,更加准确和高效。

在上述人体属性识别方法中,有效减少了待识别图像中环境对人体属性识别的干扰,骨架信息提供了对人体的整体理解能力,从而显著提高了人体属性识别的准确率。

示例性地,根据本发明实施例的人体属性识别方法可以在具有存储器和处理器的设备、装置或者系统中实现。根据本发明实施例的人体属性识别方法可以部署在图像采集端处。例如,其可以部署在商场广告牌附近的图像采集端,用以实时分析受众群体的人体属性,并据此投放精准匹配的广告信息;或者部署在诸如商场、银行等公共场所的门口的图像采集端,用以分析客户的属性与行为模式,并在市场分析等领域获得助益。替代地,根据本发明实施例的人体属性识别方法还可以分布地部署在服务器端(或云端)和客户端处。例如,可以在客户端采集图像,客户端将采集到的图像传送给服务器端(或云端),由服务器端(或云端)进行人体属性识别。

图3示出了根据本发明一个实施例的步骤s220提取骨架信息的示意性流程图。如图3所示,步骤s220可以包括以下步骤s221和步骤s222。

步骤s221,对待识别图像进行行人检测,以获得至少一个行人检测框。该至少一个行人检测框中的每个行人检测框用于指示待识别图像中包括一个行人的区域。

利用行人检测模型检测待识别图像中的行人,可以获得若干行人检测框,由此确定待识别图像中行人的位置。行人检测框可以是矩形框。矩形框可以用其宽度、高度和中心坐标来表示。行人检测模型可以是任意的行人检测神经网络,例如快速区域卷积神经网络(fasterrcnn)等。

图4示出了根据本发明一个实施例的步骤s221行人检测的示意性流程图。如图4所示步骤s221包括以下步骤。

步骤s221a,提取待识别图像的人体特征的热度图。

该步骤可以由cnn来实现。cnn是一种前馈神经网络,由若干卷积单元组成。每个卷积单元可以响应一部分覆盖范围内的周围单元。每个卷积单元的参数都是通过反向传播算法优化得到的。通过cnn对待识别图像进行卷积运算,生成该热度图。cnn的不同层次能够提取不同的特征,由此,总层数不同的cnn能够提取不同的特征。cnn的第一卷积层可提取一些低级的特征,如图像的边缘、线条和角等特征。后面的卷积层可根据前面的卷积层所提取的低级的特征迭代提取更高级、更复杂的特征,例如上述人体特征。

对于一个待识别图像,由cnn所提取的热度图可以用张量表示,在本文中称其为特征张量。特征张量可以是三阶的。三阶特征张量的三个阶可以分别代表图像的横向,纵向和频道(channel)。横向是图像的宽度的方向。纵向是图像的高度的方向。三阶特征张量x可以包括多个元素。示例性地,三阶特征张量x中的每个元素可以表示为x[i][j][k],其中,i、j、k分别表示不同阶,i=0,1,2,..,h-1;j=0,1,...,w-1;k=0,1,...,c-1;h、w、c分别表示特征张量x的高度,宽度和频道个数。特征张量中的、横坐标为i且纵坐标为j的所有频道的数值组成的一个c维向量。可选地,该c个元素可以构成一个超像素点(superpixel),可以用x[i][j]表示。可以理解,每一个超像素点可以分别对应待识别图像中的一个相应像素或区域。

步骤s221b,使用不同滑动窗口(sliding-window)截取所述热度图中的一部分,以作为待检测部分。通过滑动窗口方法可以从热度图上提取多种不同尺度的区域,例如不同长度或宽度的区域。如前所述热度图上的每一个超像素点分别对应待识别图像中的一个相应像素或区域,所以这里滑动窗口所提取的每个区域也唯一地对应于待识别图像中的一个相应区域。

步骤s221c,针对上述待检测部分进行行人检测,并且根据行人检测结果确定至少一个行人检测框。对于前述通过滑动窗口所截取的待检测部分,执行行人检测操作。如前所述,对于待检测部分,在待识别图像中存在一个与之一一对应的区域。该行人检测操作可以判断待识别图像中该对应的区域是否存在行人。每个待检测部分可以获得一个得分,代表该待检测部分所对应的区域中存在行人的概率。然后,可以根据该得分对所有待检测部分进行筛选,选取其中得分最高的一部分,例如得分最高的5个待检测部分。确定所选取的待检测部分在待识别图像中对应的区域作为行人检测框所在区域。可以输出该区域的中心坐标、宽度和高度,以作为表示行人检测框的数据。

如前所述,上述行人检测步骤s221可以用神经网络(如cnn)实现,速度快、准确度高。

可选地,在上述人体属性识别方法中还可以包括利用训练图像训练前述神经网络。例如首先将神经网络的参数随机初始化或利用已经训练好的其他网络进行初始化,例如vgg模型或残差网络(resnet)。其中,对于利用已经训练好的其他网络进行初始化的情况,可以选取其中的一部分作为根据本申请的实施例用于行人检测的神经网络的一部分。然后利用经标注的训练图像,对神经网络进行训练。训练图像是其中已经标注了的行人检测框的图像。该训练过程中,可以固定神经网络中的一部分参数,使其不参与训练。神经网络中的每个卷积单元的参数可以在训练过程中通过反向传播算法优化得到。

步骤s222,对待识别图像基于每个行人检测框进行骨架分析,以获取所述每个行人检测框中行人的骨架信息。例如,对于每个行人检测框,可以截取该行人检测框标记的部分图像,并对该部分图像进行骨架分析,以获取该行人检测框中行人的骨架信息。可以利用骨架分析模型针对待识别图像进行骨架分析,以获取行人检测框中的行人的骨架信息。骨架信息可以包括骨架特征点在待识别图像中的位置坐标。骨架分析模型可以是cnn等。

图5示出了根据本发明一个实施例的步骤s222的骨架分析的示意性流程图。如图5所示步骤s222包括以下步骤。

步骤s222a,提取待识别图像的骨架特征图。该步骤与前述提取待识别图像的人体特征的热度图类似,也可以利用cnn实现,为了简洁,在此不再赘述。

步骤s222b,对所述骨架特征图进行骨架分析,以获得所述骨架特征图中的骨架信息。通过对骨架特征图进行骨架分析,可以获得其中的多个表示骨架特征点的像素点。将待识别图像中的对应像素点作为骨架特征点。骨架分析操作可以输出这些对应像素点在待识别图像中的位置坐标。

步骤s222c,基于步骤s221所获得的每个行人检测框,确定与该行人检测框对应的骨架信息。前一步骤s222b已经获得了所有骨架特征点在待识别图像中的位置信息。在此步骤中,利用行人检测框,将所获得的骨架特征点划分为属于不同行人的骨架特征点。

上述骨架分析步骤s222也可以用神经网络实现,例如cnn。具体地,利用神经网络进行骨架分析速度快、准确度高。可选地,在人体属性识别方法中还可以包括利用训练图像训练该神经网络。训练图像可以是其中已经标注了骨架特征点的图像。根据本申请的一个实施例,首先提取训练图像的骨架特征图。以骨架特征图中与训练图像中的骨架特征点对应的像素为中心,在骨架特征图上构造骨架特征点的高斯分布,并要求骨架特征图能够拟合这些高斯分布,依此计算损失函数。根据损失函数确定该神经网络的参数。

上述示例中,首先进行行人检测,然后对行人检测所获得的行人检测框进行骨架分析。这不仅减少了计算量,提高了计算速度,还保证了骨架分析的准确性,进而保证了人体属性识别的准确率。

本领域普通技术人员可以理解,上面所给出的关于行人检测和骨架分析的具体实现的描述仅为示例,而非限制。例如,步骤s221a和步骤s222a均可以省略,直接针对待识别图像进行行人检测或骨架分析。又例如,可以采用hog(方向梯度直方图)结合svm(支持向量机)的行人检测模型来实现行人检测操作。

图6示出了根据本发明一个实施例的步骤s230识别行人的人体属性的示意性流程图。如图6所示,步骤s230识别行人的人体属性包括以下子步骤s231和s232。

步骤s231,根据步骤s220所提取的多个骨架特征点在待识别图像中的位置信息,从待识别图像中获取多个待识别子图。其中每个待识别子图包括多个骨架特征点中的一个骨架特征点。对于多个骨架特征点中的每一个,从待识别图像中获取一个与之对应的待识别子图。示例性地,针对待识别图像中的多个骨架特征点中的每一个,取其附近的像素为待识别子图的像素,例如与之距离小于特定阈值的像素,从而确定与之对应的待识别子图。

在人体中,骨架特征点通常位于人体相应部位的中间位置。例如,头部中心位于头部的中心位置。胸部或背部的骨架特征点位于胸部或背部的中心位置。左腿膝关节位于左腿膝盖的中心位置。可选地,对于待识别图像中的多个骨架特征点中的每一个,以该骨架特征点的位置为中心,从待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图。简言之,在待识别子图中,骨架特征点位于其中心位置。由此,待识别子图能够更精确地表达骨架特征点周围的图像信息,避免图像中无关因素的干扰。由此,为更准确地识别人体属性提供保障。

在一个示例中,针对待识别图像,以该骨架特征点的位置为中心确定预设尺寸的待识别子图的区域。待识别子图的区域可以是矩形。可以根据骨架特征点的位置预设待识别子图的区域的高度和宽度。例如,对于头部中心,可以将待识别子图的区域的高度和宽度设置得相对较小,且大体相等。对于胸部或背部,可以将待识别子图的区域的高度和宽度设置得相对较大,且高度略大于宽度。具体地,对于多个骨架特征点中的第i个骨架特征点,可以确定以其为中心、宽度和高度分别为wi和hi的矩形范围为所述第i个骨架特征点所对应的待识别子图的区域,其中0<i<全部骨架特征点的个数n+1。

在一些情况中,待识别子图的区域完全落在待识别图像中,例如,所提取的骨架特征点距离待识别图像的边缘较远的情况。此时,根据骨架特征点所获取的待识别子图大概率完全落在待识别图像中。在另一些情况中,待识别子图的区域不完全落在待识别图像中,例如,所提取的骨架特征点距离待识别图像的边缘较近的情况。

图7示出了根据本发明一个实施例的待识别图像。在该待识别图像中提取了多个骨架特征点,图7中示出了其中的一部分,例如针对待识别图像中的男生所提取的骨架特征点a、b、c、d,如图7中箭头所示。此外,图7中还示出了骨架特征点a、b、c、d分别对应的待识别子图的区域,如图7中矩形框所示。如图7所示,骨架特征点a和b所对应的待识别子图的区域完全落在待识别图像中。然而,骨架特征点c和d所对应的待识别子图的区域不完全落在待识别图像中,其中该区域中的阴影部分落在待识别图像的外面。

对于待识别子图的区域完全落在待识别图像中情况,可以确定待识别图像在该区域内的部分图像为待识别子图。例如,在图7中,分别对应于骨架特征点a和b的矩形框所围的部分图像为待识别子图。

对于待识别子图的区域不完全落在待识别图像中的情况,可以根据待识别图像在该区域内的部分图像对所述区域进行扩充,以形成待识别子图。例如,在图7中,对于分别对应于骨架特征点c和d的待识别子图的区域,可以用矩形框内的、在待识别图像中的像素的平均值扩充矩形框内的、在待识别图像外的部分,即图7的矩形框内的阴影部分。经扩充的矩形框内的图像为所形成的待识别子图。本领域普通技术人员可以理解,上述用平均值来扩充区域的实现方式仅为示例,也可以采用其他方式来扩充区域。

基于上述方法获取的待识别子图能够更准确地表示骨架特征点周围的图像,从而能够保证人体属性识别的准确性。

步骤s232,根据上述多个待识别子图和骨架信息,识别行人的人体属性。对于多个待识别子图中的每一个,其对应的骨架信息给出了该待识别子图对应于人体的位置。例如包括头部中心的待识别子图对应于行人的头部。那么,可以根据该骨架信息和待识别子图识别行人的人体属性。

上述步骤s230中识别行人的人体属性是利用根据骨架特征点从待识别图像中获取的待识别子图。该实现方式获得了人体的关键位置,对骨架周围的小范围图像进行处理,减少了环境因素的影响,提高了识别的准确率。此外,其所涉及的数据量小,计算速度快。

根据本发明另一方面,还提供了一种人体属性识别装置。图8示出了根据本发明一个实施例的人体属性识别装置800的示意性框图。

如图8所示,装置800包括图像获取模块810、骨架提取模块820和属性识别模块。所述各个模块可分别执行上文中所述的人体属性识别方法的各个步骤/功能。以下仅对该装置800的各部件的主要功能进行描述,而省略以上已经描述过的细节内容。

图像获取模块810用于获取待识别图像。图像获取模块810可以由图1所示的电子设备中的处理器102运行存储装置104中存储的程序指令来实现。

骨架提取模块820用于在所述待识别图像中提取行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在所述待识别图像中的位置信息。骨架提取模块820可以由图1所示的电子设备中的处理器102运行存储装置104中存储的程序指令来实现。

示例性地,所述骨架特征点包括以下人体关键点中的一个或多个:头部中心、左肩和右肩、左臂肘关节和右臂肘关节、胸部或背部、臀部、左腿膝关节、左腿踝关节、右腿膝关节和右腿踝关节。

属性识别模块830用于根据所述多个骨架特征点在所述待识别图像中的位置信息和所述待识别图像,识别所述行人的人体属性。属性识别模块830可以由图1所示的电子设备中的处理器102运行存储装置104中存储的程序指令来实现。

根据本发明的一个实施例,所述骨架提取模块820包括行人检测单元和骨架分析单元。

行人检测单元用于对所述待识别图像进行行人检测,以获得至少一个行人检测框,其中所述至少一个行人检测框中的每个行人检测框用于指示所述待识别图像中包括一个行人的区域。

骨架分析单元用于对所述待识别图像基于所述每个行人检测框进行骨架分析,以获取所述每个行人检测框中行人的骨架信息。

示例性地,所述行人检测单元包括第一特征提取子单元、检测目标确定子单元和行人检测子单元。所述第一特征提取子单元用于提取所述待识别图像的人体特征的热度图。检测目标确定子单元用于使用不同滑动窗口截取所述热度图中的一部分,以作为待检测部分。行人检测子单元用于针对所述待检测部分进行行人检测,并且根据行人检测结果确定所述至少一个行人检测框。

示例性地,所述骨架分析单元包括第二特征提取子单元、骨架分析子单元和骨架信息确定子单元。所述第二特征提取子单元用于提取所述待识别图像的骨架特征图。骨架分析子单元用于对所述骨架特征图进行骨架分析,以获得所述骨架特征图中的骨架信息。骨架信息确定子单元用于基于每个行人检测框,确定每个行人检测框对应的骨架信息。

根据本发明的一个实施例,所述属性识别模块830包括待识别子图获取单元和属性识别单元。

所述待识别子图获取单元用于根据所述多个骨架特征点在所述待识别图像中的位置信息,从所述待识别图像中获取多个待识别子图,其中每个待识别子图包括所述多个骨架特征点中的一个骨架特征点。

所述属性识别单元用于根据所述多个待识别子图和所述骨架信息,识别所述行人的人体属性。

示例性地,所述待识别子图获取单元具体用于对于所述多个骨架特征点中的每一个,以该骨架特征点的位置为中心,从所述待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图。

示例性地,所述待识别子图获取单元包括区域确定子单元、第一子图确定子单元和第二子图确定子单元。

所述区域确定子单元用于针对所述待识别图像,以该骨架特征点的位置为中心确定所述预设尺寸的待识别子图的区域。

所述第一子图确定子单元用于对于所述待识别子图的区域完全落在所述待识别图像中的情况,确定所述待识别图像在该区域内的部分图像为所述预设尺寸的待识别子图。

第二子图确定子单元用于对于所述待识别子图的区域不完全落在所述待识别图像中的情况,根据所述待识别图像在该区域内的部分图像对所述区域进行扩充,以形成所述预设尺寸的待识别子图。

根据本发明的一个实施例,所述属性识别模块830具体用于利用神经网络识别所述行人的人体属性。

示例性地,所述人体属性包括多个属性类别,所述神经网络包括多个分类器,每个分类器用于输出所述多个属性类别中的一个。

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

图9示出了根据本发明一个实施例的人体属性识别系统900的示意性框图。如图9所示,系统900包括输入装置910、存储装置920、处理器930以及输出装置940。

所述输入装置910用于接收用户所输入的操作指令以及采集数据。输入装置910可以包括键盘、鼠标、麦克风、触摸屏和图像采集装置等中的一个或多个。

所述存储装置920存储用于实现根据本发明实施例的人体属性识别方法中的相应步骤的计算机程序指令。

所述处理器930用于运行所述存储装置920中存储的计算机程序指令,以执行根据本发明实施例的人体属性识别方法的相应步骤,并且用于实现根据本发明实施例的人体属性识别装置中的图像获取模块810、骨架提取模块820和属性识别模块830。

在本发明的一个实施例中,在所述计算机程序指令被所述处理器930运行时使所述系统900执行以下步骤:

获取待识别图像;

在所述待识别图像中提取行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在所述待识别图像中的位置信息;以及

根据所述多个骨架特征点在所述待识别图像中的位置信息和所述待识别图像,识别所述行人的人体属性。

示例性地,所述骨架特征点包括以下人体关键点中的一个或多个:头部中心、左肩和右肩、左臂肘关节和右臂肘关节、胸部或背部、臀部、左腿膝关节、左腿踝关节、右腿膝关节和右腿踝关节。

在本发明的一个实施例中,在所述计算机程序指令被所述处理器930运行时使所述系统900执行的所述在所述待识别图像中提取行人的骨架信息的步骤包括:

对所述待识别图像进行行人检测,以获得至少一个行人检测框,其中所述至少一个行人检测框中的每个行人检测框用于指示所述待识别图像中包括一个行人的区域;以及

对所述待识别图像基于所述每个行人检测框进行骨架分析,以获取所述每个行人检测框中行人的骨架信息。

示例性地,在所述计算机程序指令被所述处理器930运行时使所述系统900执行的所述对所述待识别图像进行行人检测的步骤包括:

提取所述待识别图像的人体特征的热度图;

使用不同滑动窗口截取所述热度图中的一部分,以作为待检测部分;以及

针对所述待检测部分进行行人检测,并且根据行人检测结果确定所述至少一个行人检测框。

示例性地,在所述计算机程序指令被所述处理器930运行时使所述系统900执行的所述对所述待识别图像基于所述每个行人检测框进行骨架分析的步骤包括:

提取所述待识别图像的骨架特征图;

对所述骨架特征图进行骨架分析,以获得所述骨架特征图中的骨架信息;

基于每个行人检测框,确定每个行人检测框对应的骨架信息。

在本发明的一个实施例中,在所述计算机程序指令被所述处理器930运行时使所述系统900执行的所述根据所述多个骨架特征点在所述待识别图像中的位置信息和所述待识别图像,识别所述行人的人体属性的步骤包括:

根据所述多个骨架特征点在所述待识别图像中的位置信息,从所述待识别图像中获取多个待识别子图,其中每个待识别子图包括所述多个骨架特征点中的一个骨架特征点;以及

根据所述多个待识别子图和所述骨架信息,识别所述行人的人体属性。

在本发明的一个实施例中,在所述计算机程序指令被所述处理器930运行时使所述系统900执行的所述根据所述多个骨架特征点在所述待识别图像中的位置信息,从所述待识别图像中获取多个待识别子图的步骤包括:

对于所述多个骨架特征点中的每一个,以该骨架特征点的位置为中心,从所述待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图。

在本发明的一个实施例中,在所述计算机程序指令被所述处理器930运行时使所述系统900执行的所述以该骨架特征点的位置为中心,从所述待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图的步骤包括:

针对所述待识别图像,以该骨架特征点的位置为中心确定所述预设尺寸的待识别子图的区域;

对于所述待识别子图的区域完全落在所述待识别图像中的情况,确定所述待识别图像在该区域内的部分图像为所述预设尺寸的待识别子图;以及

对于所述待识别子图的区域不完全落在所述待识别图像中的情况,根据所述待识别图像在该区域内的部分图像对所述区域进行扩充,以形成所述预设尺寸的待识别子图。

在本发明的一个实施例中,在所述计算机程序指令被所述处理器930运行时使所述系统900执行的所述根据所述多个骨架特征点在所述待识别图像中的位置信息和所述待识别图像,识别所述行人的人体属性的步骤包括:

根据所述多个骨架特征点在所述待识别图像中的位置信息和所述待识别图像,利用神经网络识别所述行人的人体属性。

示例性地,所述人体属性包括多个属性类别,所述神经网络包括多个分类器,每个分类器用于输出所述多个属性类别中的一个。

此外,根据本发明再一方面,还提供了一种存储介质,在所述存储介质上存储了程序指令,在所述程序指令被计算机或处理器运行时使得所述计算机或处理器执行本发明实施例的人体属性识别方法的相应步骤,并且用于实现根据本发明实施例的人体属性识别装置中的相应模块。所述存储介质例如可以包括智能电话的存储卡、平板电脑的存储部件、个人计算机的硬盘、只读存储器(rom)、可擦除可编程只读存储器(eprom)、便携式紧致盘只读存储器(cd-rom)、usb存储器、或者上述存储介质的任意组合。所述计算机可读存储介质可以是一个或多个计算机可读存储介质的任意组合。

在本发明的一个实施例中,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行以下步骤:

获取待识别图像;

在所述待识别图像中提取行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在所述待识别图像中的位置信息;以及

根据所述多个骨架特征点在所述待识别图像中的位置信息和所述待识别图像,识别所述行人的人体属性。

示例性地,所述骨架特征点包括以下人体关键点中的一个或多个:头部中心、左肩和右肩、左臂肘关节和右臂肘关节、胸部或背部、臀部、左腿膝关节、左腿踝关节、右腿膝关节和右腿踝关节。

在本发明的一个实施例中,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行的所述在所述待识别图像中提取行人的骨架信息的步骤包括:

对所述待识别图像进行行人检测,以获得至少一个行人检测框,其中所述至少一个行人检测框中的每个行人检测框用于指示所述待识别图像中包括一个行人的区域;以及

对所述待识别图像基于所述每个行人检测框进行骨架分析,以获取所述每个行人检测框中行人的骨架信息。

示例性地,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行的所述对所述待识别图像进行行人检测的步骤包括:

提取所述待识别图像的人体特征的热度图;

使用不同滑动窗口截取所述热度图中的一部分,以作为待检测部分;以及

针对所述待检测部分进行行人检测,并且根据行人检测结果确定所述至少一个行人检测框。

示例性地,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行的所述对所述待识别图像基于所述每个行人检测框进行骨架分析的步骤包括:

提取所述待识别图像的骨架特征图;

对所述骨架特征图进行骨架分析,以获得所述骨架特征图中的骨架信息;

基于所述每个行人检测框,确定所述每个行人检测框对应的骨架信息。

在本发明的一个实施例中,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行的所述根据所述多个骨架特征点在所述待识别图像中的位置信息和所述待识别图像,识别所述行人的人体属性的步骤包括:

根据所述多个骨架特征点在所述待识别图像中的位置信息,从所述待识别图像中获取多个待识别子图,其中每个待识别子图包括所述多个骨架特征点中的一个骨架特征点;以及

根据所述多个待识别子图和所述骨架信息,识别所述行人的人体属性。

示例性地,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行的所述根据所述多个骨架特征点在所述待识别图像中的位置信息,从所述待识别图像中获取多个待识别子图的步骤包括:

对于所述多个骨架特征点中的每一个,以该骨架特征点的位置为中心,从所述待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图。

示例性地,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行的所述以该骨架特征点的位置为中心,从所述待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图的步骤包括:

针对所述待识别图像,以该骨架特征点的位置为中心确定所述预设尺寸的待识别子图的区域;

对于所述待识别子图的区域完全落在所述待识别图像中的情况,确定所述待识别图像在该区域内的部分图像为所述预设尺寸的待识别子图;以及

对于所述待识别子图的区域不完全落在所述待识别图像中的情况,根据所述待识别图像在该区域内的部分图像对所述区域进行扩充,以形成所述预设尺寸的待识别子图。

在本发明的一个实施例中,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行的所述根据所述多个骨架特征点在所述待识别图像中的位置信息和所述待识别图像,识别所述行人的人体属性的步骤包括:

根据所述多个骨架特征点在所述待识别图像中的位置信息和所述待识别图像,利用神经网络识别所述行人的人体属性。

示例性地,所述人体属性包括多个属性类别,所述神经网络包括多个分类器,每个分类器用于输出所述多个属性类别中的一个。

根据本发明实施例的人体属性识别系统中的各模块可以通过根据本发明实施例实施人体属性识别的电子设备的处理器运行在存储器中存储的计算机程序指令来实现,或者可以在根据本发明实施例的计算机程序产品的计算机可读存储介质中存储的计算机指令被计算机运行时实现。

根据本发明实施例的人体属性识别方法、装置、系统和存储介质,通过提取行人的骨架信息并根据该骨架信息进行人体属性识别来提高识别的准确性。

尽管这里已经参考附图描述了示例实施例,应理解上述示例实施例仅仅是示例性的,并且不意图将本发明的范围限制于此。本领域普通技术人员可以在其中进行各种改变和修改,而不偏离本发明的范围和精神。所有这些改变和修改意在被包括在所附权利要求所要求的本发明的范围之内。

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

在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个设备,或一些特征可以忽略,或不执行。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该本发明的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如相应的权利要求书所反映的那样,其发明点在于可以用少于某个公开的单个实施例的所有特征的特征来解决相应的技术问题。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域的技术人员可以理解,除了特征之间相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(dsp)来实现根据本发明实施例的人体属性识别装置中的一些模块的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

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

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