CN110163031B - 用于检测对象的部位的装置和方法及存储介质 - Google Patents
用于检测对象的部位的装置和方法及存储介质 Download PDFInfo
- Publication number
- CN110163031B CN110163031B CN201810147718.1A CN201810147718A CN110163031B CN 110163031 B CN110163031 B CN 110163031B CN 201810147718 A CN201810147718 A CN 201810147718A CN 110163031 B CN110163031 B CN 110163031B
- Authority
- CN
- China
- Prior art keywords
- resolution
- maps
- stage
- heat maps
- target image
- 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.)
- Active
Links
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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本公开涉及用于检测对象的部位的装置和方法及存储介质。对象部位检测装置可以包括:热图生成单元,被配置成接收包括对象的目标图像并且对目标图像执行多个阶段的处理,其中多个阶段包括:第一阶段,用于至少基于从目标图像提取的第一组特征图来生成第一组对象部位热图,以及第二阶段,用于基于从目标图像提取的第二组特征图和在第一阶段中生成的第一组对象部位热图来生成第二组对象部位热图,其中第二组对象部位热图的分辨率与第一组对象部位热图的分辨率不同。对象部位检测装置还可以包括组合单元,该组合单元被配置成组合在多个阶段中生成的多组对象部位热图。
Description
技术领域
本公开涉及用于检测对象的部位的装置和方法及存储介质。
背景技术
对象部位检测是用于确定对象的不同部位的精确位置的技术。例如,人体关节部位检测是一种具体的对象部位检测技术,其对于比如动作识别的较高级任务是有用的,并且它用作从人机交互到动画制作的不同领域中的基础工具。
已经提出了使用卷积神经网络(CNN)来隐式地建模人体关节部位检测中的变量之间的长期依赖性的方法。参见非专利文献“Convolutional Pose Machines”,Shih-En Wei,Varun Ramakrishna,Takeo Kanade,Yaser Sheikh,CVPR,2016年。这篇非专利文献的全部内容通过引用被结合于此。图14示出了这篇非专利文献中提出的卷积姿态机器(CPM)模型。CPM模型具有T个阶段,并且递归地生成具有相同大小的人体关节部位的热图。每个热图的像素的值指示出一个对应的关节部位位于该像素的位置处的概率。如图14所示,将最后一个阶段的输出作为CPM模型的最终输出。
在对象部位检测领域中,期望提高关于对象大小的检测鲁棒性,也称为尺度不变性(scale invariance)。实际上,同一种对象的不同实例可能具有不同的大小。例如,远离相机的实例看起来比靠近相机的实例要小,或者实例的自然大小是不同的,例如,成人和孩童。期望正确地检测不同大小的实例的部位。
在上述非专利文献中,为了提高尺度不变性,其中提出的方法从原始输入图像中生成各种分辨率的多个图像,并且然后分别使用这多个图像作为CPM模型的输入。图15示出了在上述非专利文献中提出的人体关节部位检测方法(下文称为“基于CPM模型的方法”)的流程图。从图15中可以看出,生成了具有不同分辨率的S个图像,基于CPM模型的人体关节部位检测操作被重复执行S次,并且相应地生成S组人体关节部位热图。这里,S是大于或等于2的整数。实际上,S取值为12。最后,获得S组人体关节部位热图的平均值作为最终的一组人体关节部位热图。这里,基于CPM模型的操作被重复执行12次以便提高人体关节部位检测的精度。
发明内容
本公开的一个目的是提供一种改进的对象部位检测装置和方法。
本公开提出了用于检测对象的部位的装置。该装置可以包括热图生成单元,该热图生成单元被配置成接收包括对象的目标图像并对目标图像执行多个阶段的处理,其中所述多个阶段包括:第一阶段,用于至少基于从目标图像提取的第一组特征图来生成第一组对象部位热图;以及第二阶段,用于基于从目标图像提取的第二组特征图和在第一阶段中生成的第一组对象部位热图来生成第二组对象部位热图,其中第二组对象部位热图的分辨率与第一组对象部位热图的分辨率不同。该装置还可以包括组合单元,该组合单元被配置成组合在多个阶段中生成的多组对象部位热图。
从参考附图的以下描述中,本公开其他特点特征和优点将变得清楚。
附图说明
并入说明书中并构成说明书的一部分的附图图示了本公开的实施例,并且与说明书一起用于解释本公开的原理而没有限制。在各图中,类似的标号用于表示类似的项目。不一定按比例绘制的各图描述了所选择的说明性实施例,并且不旨在限制本公开的范围。
图1是根据本公开的一些实施例的示例性对象部位检测装置的框图。
图2是图示根据本公开的一些实施例的示例性对象部位检测方法的流程图。
图3是根据本公开的一个实施例的示例性人体关节部位检测装置的框图。
图4是图示根据本公开的所述一个实施例的示例性人体关节部位检测方法的流程图。
图5是图示根据本公开的所述一个实施例的CNN的第一个阶段的示例性详细处理的流程图。
图6示出了第一个阶段中的特征提取处理的示例性体系架构。
图7示出了第一个阶段中的热图生成处理的示例性体系架构。
图8是图示根据本公开的所述一个实施例的CNN的第t(2≤t≤T)个阶段的示例性详细处理的流程图。
图9A-图9B示出了在第t个阶段中的特征提取处理的两个示例性体系架构。
图10A-图10C示出了在第t个阶段中的热图生成处理的三个示例性体系架构。
图11是图示根据本公开的所述一个实施例的组合步骤的示例性详细处理的流程图。
图12A-图12C示出了根据本公开的所述一个实施例的人体关节部位检测方法的三个具体示例。
图13示出了根据本公开的一些实施例的其中可应用本公开的一般硬件环境。
图14示出了现有技术中提出的CPM模型。
图15示出了现有技术中提出的人体关节部位检测方法的流程图。
具体实施方式
在以下详细描述中,阐述了许多具体细节以提供对所描述的示例性实施例的透彻理解。但是,对于本领域技术人员清楚的是,所描述的实施例可以在没有这些具体细节中的一些或全部的情况下进行实践。在所描述的示例性实施例中,为了避免不必要地模糊本公开的概念,没有详细描述众所周知的结构或处理步骤。
下文所示的每个框图内的方框可以通过硬件、软件、固件或其任意组合来实现以实现本公开的原理。本领域技术人员应该理解的是,每个框图中描述的方框可以被组合或分成子框来实现本公开的原理。
本公开中呈现的方法的步骤旨在是说明性的。在一些实施例中,该方法可以用未描述的一个或多个附加步骤来完成和/或在没有所讨论的一个或多个步骤的情况下完成。此外,方法的步骤被图示和描述的顺序并不旨在是限制性的。
在本公开中,对象部位热图是指这样的图像,其像素的值指示出对象的某个部位位于该像素的位置处的概率。也就是说,具有对象部位热图的最大值的像素指示出对象的某个部位在这个热图中的位置。
在本公开中,特征图是指反映出对象的某种几何特征(诸如点、线或面特征)的图像。一组特征图是指反映出对象的不同几何特征的一组图像。
图1是根据本公开的一些实施例的示例性对象部位检测装置100的框图。
如图1所示,装置100可以包括热图生成单元110,该热图生成单元110被配置成接收包括对象的目标图像并且对目标图像执行多个阶段的处理。这多个阶段可以包括:第一阶段,用于至少基于从目标图像提取的第一组特征图来生成第一组对象部位热图;以及第二阶段,用于基于从目标图像提取的第二组特征图和在第一阶段中生成的第一组对象部位热图来生成第二组对象部位热图,其中第二组对象部位热图的分辨率与第一组对象部位热图的分辨率不同。装置100还可以包括组合单元120,该组合单元120被配置成组合在所述多个阶段中生成的多组对象部位热图。
这里,所述第一阶段和所述第二阶段是指所述多个阶段中的两个相邻阶段。所述第一阶段可以是除了所述多个阶段中的最后一个阶段以外的任一阶段,所述第二阶段可以是除了所述多个阶段中的初级阶段以外的任一阶段。
图2是图示根据本公开的一些实施例的示例性对象部位检测方法200的流程图。方法200可以包括:接收包括对象的目标图像并且对目标图像执行多个阶段的处理的步骤S210。这多个阶段可以包括:第一阶段,用于至少基于从目标图像提取的第一组特征图来生成第一组对象部位热图,以及第二阶段,用于基于从目标图像提取的第二组特征图和在第一阶段中生成的第一组对象部位热图来生成第二组对象部位热图,其中第二组对象部位热图的分辨率与第一组对象部位热图的分辨率不同。方法200还可以包括:组合在所述多个阶段中生成的多组对象部位热图的步骤S220。
接下来,将参考图3至图11描述本公开的示例性实施例。
在本实施例中,对象的部位是指人体的两个或更多个关节部位,诸如肩关节、肘关节、腕关节、髋关节、膝关节、踝关节、头顶部位、颈部的中间点等等。但是本公开不限于此。对象的部位可以是动物(诸如鸟)的两个或更多个身体部位、实体(诸如椅子)的两个或更多个部位等等。
在本实施例中,在CNN的背景下描述用于检测人体关节部位的装置和方法。但是本公开不限于此。可以在其他背景下实现本公开的装置和方法。在本实施例中,CNN可以包括T个阶段,其中T是大于或等于2的整数。下面将详细描述T个阶段的处理。
图3示出了根据本实施例的示例性人体关节部位检测装置300的框图。
如图3所示,装置300可以包括:预处理单元310,被配置成接收输入图像并对输入图像执行预处理以获得包含人体的具有预设大小的目标图像;特征提取单元320,被配置成从目标图像中提取多组特征图;热图生成单元330,被配置成至少基于多组特征图来生成多组人体关节部位热图;组合单元340,被配置成组合在热图生成单元330中生成的多组人体关节部位热图;以及后处理单元350,被配置成对从组合单元340输出的一组组合的人体关节部位热图执行缩放操作和坐标变换以便获得人体关节部位在输入图像中的位置。
下文将进一步详细描述如图3所示的各单元的操作。
图4是图示根据本实施例的示例性人体关节部位检测方法400的流程图。
方法400从步骤S410开始,在步骤S410处,预处理单元310接收输入图像并且对输入图像执行预处理以获得包含人体的具有预设大小的目标图像(在下文中称为目标图像I)。
在本实施例中,预处理单元310检测存在于输入图像中的人体并获取人体的边界框。这种检测和获取操作可以通过使用任何已知的人体检测方法来实现。人体的边界框可以是围绕人体的矩形或方形框。矩形或方形框可以是具有两个水平边和两个垂直边的框。然后,预处理单元310将人体边界框内的图像的大小调节为N×N个像素(例如,368×368个像素)的预设大小。通过使用这种大小调节操作,可以将具有不同大小的人体对象归一化为同一尺度。具体而言,假定边界框具有矩形形状,那么预处理单元310缩放输入图像以使得边界框的长边变为N个像素,并且然后在使边界框的中心不变的情况下将边界框的短边的长度增大到N个像素。假定边界框具有正方形形状,那么大小调节操作可以仅通过缩放操作来实现。最后,预处理单元310将大小调节后的边界框内的图像裁剪为目标图像I。如果大小调节后的边界框覆盖输入图像的外部区域,那么预处理单元310裁剪大小调节后的边界内的图像并用零填充大小调节后的边界框内的所述外部区域以便生成目标图像I。
应注意,本发明不限于上述具体的预处理过程。只要能够获得包含人体的具有预设大小的目标图像I,就可以采用其它已知的预处理过程。
方法400前进到步骤S420,在步骤S420处,执行CNN的第一个阶段(即初级阶段)的处理。步骤S420和后面描述的步骤S430构成CNN的T个阶段的处理。在步骤S420中,令变量t等于1。这里,变量t表示CNN的阶段的编号。t是整数并且t∈{1,...,T}。在步骤S420中,特征提取单元320从目标图像I中提取第一组特征图f1,并且然后热图生成单元330基于第一组特征图f1生成第一组人体关节部位热图h1。
图5是图示步骤S420的示例性详细处理的流程图。
如图5所示,在子步骤S422中,特征提取单元320接收在步骤S410中生成的目标图像I、从目标图像I中提取第一组特征图f1、并且输出第一组特征图f1。图6示出了子步骤S422中的特征提取操作的示例性体系架构。如图6中可以看到的,通过对目标图像I应用一系列卷积层602-610来生成特征图f1。每个卷积层可以由多个预先训练的滤波器组成。一个卷积层的输出被用作下一个卷积层的输入。
在图6中,字母“C”是“卷积层”的缩写,“9×9”等表示卷积层中的滤波器的大小。在这种示例性体系架构中,卷积层602-610中的滤波器的数量依次为:128、128、128、32和512。此外,卷积层602-610的填充参数(pad parameter)依次为:4、4、4、2和4,并且卷积层602-610的步幅参数(stride parameter)都是1。此外,在每个卷积层的滤波器中采用的系数(诸如加权系数等)可以是通过使用任何已知的深度学习技术而预先确定的(或预先训练的)。
在本实施例中,第一组特征图f1包括512个特征图。可以通过控制最后一个卷积层610中采用的滤波器的数量来控制特征图的数量。应注意,特征图的数量不限于此。特征图的数量可以根据实际要求而有所不同。
如图6所示,特征图f1的分辨率与目标图像I的分辨率相同。即,它们都具有N×N个像素的分辨率。
返回参考图5,在子步骤S424中,热图生成单元330接收从子步骤S422输出的第一组特征图f1,并且基于第一组特征图f1生成第一组热图h1。在子步骤S424中,热图生成单元330将第一组热图h1作为CNN的输出的一个分支(branch)而输出到组合单元340。
图7示出了子步骤S424中的热图生成处理的示例性体系架构。在图7中,通过对特征图f1应用两个卷积层702、704来生成热图h1。在卷积层702中,采用了大小为“1×1”的512个滤波器。而在卷积层704中,采用了大小为“1×1”的P+1个滤波器。因此,第一组热图h1包括P+1个热图。此外,卷积层702-704的填充参数都是0,并且卷积层702-704的步幅参数都是1。这里,P是指人体关节部位的数量。P是大于或等于2的整数。在本实施例中,P取值为14。具体而言,考虑以下14个关节部位:两个肩关节、两个肘关节、两个腕关节、两个髋关节、两个膝关节、两个踝关节、一个头顶部位和一个颈部的中间点。也就是说,在CNN的第一个阶段结束时,生成P+1个热图,其中P个热图分别对应于P个关节部位,而剩余的一个热图对应于目标图像I的背景部分(即,非对象部分)。
如图7所示,热图h1的分辨率与第一组特征图f1的分辨率相同。即,它们都具有N×N个像素的分辨率。
方法400前进到步骤S430,在步骤S430处,执行CNN的第t(2≤t≤T)个阶段的处理。在步骤S430中,首先,使变量t的值增大1。其次,特征提取单元320从目标图像I中提取第t组特征图,并且然后热图生成单元330基于第t组特征图和在前一阶段中生成的第(t-1)组热图来生成第t组热图。
步骤S430中的操作与步骤S420中的操作的不同之处主要在于,在步骤S430中,热图基于特征图和在前一阶段中生成的热图两者而被生成。而在步骤S420中,热图仅基于特征图而被生成。
图8是图示步骤S430的示例性详细处理的流程图。
如图8所示,在子步骤S432中,特征提取单元320接收在步骤S410中生成的目标图像I、从目标图像I中提取第t组特征图ft、并且输出第t组特征图ft,其中特征提取单元320选择性地执行特征图分辨率调节处理。换句话说,特征提取单元320在CNN的第2个阶段至第t个阶段中的至少一个阶段中执行特征图分辨率调节处理。
图9A-图9B示出了子步骤S432中的特征提取处理的两个示例性体系架构。
在图9A中,通过对目标图像I应用一系列卷积层902、906、908和910以及一个池化层904来生成第t组特征图ft。在这个示例性体系架构中,在卷积层902、906、908和910中的滤波器的数量依次是:128、128、128和32。此外,卷积层902、906、908和910的填充参数依次是:4、4、4和2,并且卷积层902、906、908和910的步幅参数都是1。
在图9A中,“P”是“池化层”的缩写,并且“2×2”表示池化处理的下采样倍数。在这个示例性体系架构中,池化层904采用最大池化。可替代地,池化层904可以采用平均池化。池化层904的步幅参数是2。
这里,引入池化层904以减小(或下采样)特征图ft的分辨率。如后面将描述的,这要求调节后的特征图ft的分辨率与热图ht-1的分辨率相同。
更具体而言,通过引入具有“2×2”的下采样倍数的一个池化层904,输出特征图ft的分辨率变为N/2×N/2个像素。也就是说,通过分别在目标图像I的两个方向(例如,长度方向和宽度方向)上执行两倍下采样操作,输出特征图ft的分辨率变为N/2×N/2个像素。
在图9B中,通过对目标图像I应用一系列卷积层912、916、920和922以及两个池化层914和918来生成第t组特征图ft。图9B所示的体系架构与图9A所示的体系架构的不同之处仅仅在于:采用了两个池化层914和918。每个池化层914和918的结构都与池化层904的结构相同。通过使用具有“2×2”的下采样倍数的两个池化层914和918,输出特征图ft的分辨率变为N/4×N/4个像素。
如可以理解的,如果在特征提取处理中引入具有“2×2”的下采样倍数的三个池化层,那么输出特征图ft的分辨率将变为N/8×N/8个像素。
虽然没有示出,但是类似地,可以通过引入一个或多个解卷积层(deconvolutional layer)来增大输出特征图ft的分辨率。例如,图9A-图9B中的池化层904、914和918可以分别由解卷积层来代替。解卷积层可以由多个预先训练的滤波器组成。解卷积层的上采样倍数可以根据实际需要来确定。
应注意,图9A-图9B所示的特征图分辨率调节处理是示例性处理,并且本公开不限于此。可以根据实际需要修改池化层在多个卷积层之中的次序和池化层的下采样倍数。例如,关于池化层的下采样倍数,可以使用具有“4×4”的下采样倍数的一个池化层来代替例如如图9B所示的具有“2×2”的下采样倍数的两个池化层。并且这个具有“4×4”的下采样倍数的一个池化层可以被放置在紧接着第一卷积层912之后或其他适当的位置。
返回参考图8,在子步骤S434中,热图生成单元330接收从子步骤S432输出的第t组特征图ft和从步骤S420或S430输出的第(t-1)组热图ht-1、连接(concatenate)第t组特征图ft和第(t-1)组热图ht-1以获得一组连接图ct、并且基于该组连接图ct生成第t组热图ht,其中热图生成单元330选择性地执行热图分辨率调节处理。换句话说,热图生成单元330在CNN的第2个阶段至第t个阶段中的至少一个阶段中执行热图分辨率调节处理。在子步骤S434中,热图生成单元330将第t组热图ht作为CNN的输出的一个分支而输出到组合单元340。
图10A、图10B和图10C示出了子步骤S434中的热图生成处理的三个示例性体系架构。图10A示出了其中未执行热图分辨率调节处理的示例性体系架构,而图10B-图10C示出了其中执行热图分辨率调节处理的两个示例性体系架构。
在图10A中,首先,热图生成单元330连接特征图ft和热图ht-1以获得一组连接图ct。具体地,在本实施例中,特征图ft和热图ht-1被顺序地布置以获得连接图ct。应注意,为了使特征图ft和热图ht-1能够连接,要求特征图ft的分辨率与热图ht-1的分辨率相同。在图10A中,要素1001表示实现上述连接操作的连接层。其次,热图生成单元330通过对连接图ct应用一系列卷积层1002、1004、1006、1008、1010来生成第t组热图ht。每个卷积层可以由多个预先训练的滤波器组成。如可以看到的,子步骤S434的卷积层所采用的滤波器的大小比在子步骤S424中使用的滤波器的大小大。这是因为,在这个子步骤中,旨在用更大的感受野来捕捉关节部位的全局结构。
在图10A中,卷积层1002-1010中的滤波器的数量依次是:128、128、128、128和P+1。此外,卷积层1002-1010的填充参数依次是:5、5、5、0和0,并且卷积层1002-1010的步幅参数都是1。
图10B与图10A的不同之处仅仅在于,紧接在第二个卷积层1014之后引入具有“2×2”的下采样倍数的一个池化层1016,以将输出热图ht的分辨率减小到N/4×N/4个像素。池化层1016采用最大池化并采用值为2的步幅参数。如可以看到的,与前一阶段中生成的热图ht-1的分辨率“N/2×N/2”相比,热图ht的分辨率已经减小。更具体而言,在当前阶段中生成的热图ht的分辨率已经在目标图像I的长度方向和宽度方向中的每个方向上下降了一半。
图10C与图10A的不同之处仅仅在于,紧接在第二个卷积层1026之后引入一个解卷积层1028,以将输出热图ht的分辨率提高到N×N个像素。在图10C中,字母“DC”是“解卷积层”的缩写。在这个示例性体系架构中,解卷积层1028由具有4×4大小的128个预先训练的滤波器组成。解卷积层1028的步幅参数是2,并且解卷积层1028的填充参数是1。在这个解卷积层1028中的滤波器中采用系数(诸如权重系数等)可以被预先训练。这个解卷积层1028可以实现“2×2”的上采样倍数。如可以看到的,与前一阶段中生成的热图ht-1的分辨率“N/2×N/2”相比,在当前阶段中生成的热图ht的分辨率已经增大。更具体而言,热图ht的分辨率已经在目标图像I的长度方向和宽度方向中的每个方向上翻倍。
应注意,图10B-图10C中所示的热图分辨率调节处理是示例性的而不是限制性的。可以在热图生成处理中引入更多的池化层或解卷积层,以减小或增大在当前阶段中生成的热图的分辨率。并且,可以根据实际需要修改池化层或解卷积层在多个卷积层之中的次序以及池化层或解卷积层的采样倍数。
方法400前进到步骤S440,在步骤S440处,组合单元340组合在热图生成单元330中生成的多组人体关节部位热图h1-hT。
图11是图示根据本实施例的步骤S440的示例性详细处理的流程图。如图11所示,在子步骤S442中,组合单元340接收作为CNN的输出的分支而从T个阶段输出的T组热图h1-hT、统一它们的分辨率、并且输出分辨率已经被统一的T组热图h1'-hT'。可以通过使用解卷积处理来实现分辨率的统一。在本实施例中,组合单元340将热图h1-ht的分辨率统一为N×N个像素的分辨率。
然后,在子步骤S444中,组合单元340计算从子步骤S442输出的T组热图h1'-hT'的加权和。如前面提到的,T组热图h1'-hT'中的每一组分别具有与人体的P个关节部位和目标图像I的背景部分对应的P+1个热图。在本实施例中,组合单元340从T组热图h1'-hT'中选择出与同一部位对应的T个热图,并且计算选择出的T个热图的加权和以生成这个部位的组合热图。例如,组合单元340从T组热图h1'-hT'中选择出右手腕的T个热图,并且计算选择出的T个热图的加权和以生成右手腕的组合热图。又例如,组合单元340从T组热图h1'-hT'中选择出背景部分的T个热图,并且计算选择出的T个热图的加权和以生成背景部分的组合热图。可以用预先训练的卷积处理来实现加权和的计算。用于不同关节部位和背景部分的权重集合可以不同。最后,可以生成包括P+1个组合热图的一组组合热图hc。组合单元340将该组组合热图hc输出到后处理单元350。
方法400前进到步骤S450,在步骤S450处,后处理单元350对从组合单元340输出的这组组合热图hc执行缩放操作和坐标变换以便获得关节部位在输入图像中的位置。
具体而言,后处理单元350对这组组合热图hc的每个热图执行作为在预处理单元310中执行的缩放处理的逆处理的缩放处理以及基于在预处理单元310中执行的裁剪处理(在一些情况下,裁剪处理和填充处理两者)的坐标变换,以便生成一组变换后的热图hc'。如可以理解的,在P+1个变换后的热图hc'中,在P个关节部位热图中的每个热图中具有最大值的像素的坐标指示出对应关节部位在输入图像中的所检测到的位置。
方法400还可以包括未示出的输出步骤。在这个输出步骤中,后处理单元350可以整体输出P+1个变换后的热图hc'。可替代地,后处理单元350可以输出P+1个转换后的热图hc'中的一个或多个特定关节部位的热图。
与图15所示的基于CPM模型的方法相比,上述实施例的人体关节部位检测方法可以显著减少计算冗余并且同时以端到端的方式提高尺度不变性。实验数据表明,假定上述实施例的方法采用与基于CPM模型的方法相同数量的阶段,那么上述实施例的方法的计算成本大于基于CPM模型的方法的用于一个图像尺度的计算成本并且小于基于CPM模型的用于S个图像尺度(例如,12个图像尺度)的计算成本。因此,上述实施例的方法会是更快的。同时,鉴于上述实施例的方法组合了具有不同分辨率的多组热图来获得最终的一组热图,因此可以在精度方面实现与基于CPM模型的方法类似的性能。
应注意,虽然在上述实施例中,在CNN的每个阶段中执行特征提取处理,但是本公开不限于此。特征提取处理可以独立于CNN的多个阶段来执行。例如,可以对目标图像提前执行特征提取处理,以便生成具有不同分辨率的多组特征图,并且然后可以将具有适当分辨率的一组特征图提供给对应的阶段。
应注意,虽然在上述实施例中,在CNN的第一个阶段中没有调节特征图和热图的分辨率,但是本公开不限于此。实际上,特征图或热图分辨率调节处理可以在CNN的多个阶段中的任一阶段中执行。此外,热图分辨率调节处理可以在CNN的多个阶段中的一个或多个阶段中执行。并且可以相应地执行特征图分辨率调节处理。在一个实施例中,可以在CNN的多个阶段中的每个阶段中执行热图分辨率调节处理。在另一个实施例中,可以在CNN的除初级阶段之外的多个阶段中的每个阶段中执行热图分辨率调节处理。
应注意,虽然在上述实施例中,池化处理和解卷积处理被示出为用于调节图像的分辨率的手段,但是本公开不限于此。可以采用用于对图像进行上采样或下采样的其它手段来调节图像的分辨率。
应注意,虽然在上述实施例中,给出了关于卷积层或解卷积层中的滤波器的具体参数(例如,大小、数量、填充参数、步幅参数等),但是本公开不限于此。可以根据实际需要来灵活修改关于卷积层或解卷积层中的滤波器的参数。
还应注意,虽然在上述实施例中,CNN的T个阶段被执行一次,但是本公开不限于此。CNN的T个阶段可以根据实际需要被执行多于一次。即使CNN的T个阶段被执行多于一次,如前面提到的,计算冗余仍然可以被减少。
下面将参考图12A至图12C描述上述实施例的三个示例。在图12A至图12C中,示出了具有六个阶段的CNN。六组热图h1-h6分别从第一个阶段至第六个阶段顺序地输出。为了简化说明,在图12A至图12C中,仅仅图示了热图的分辨率的变化,而未图示特征图的分辨率的变化。此外,虽然在图12A至图12C中没有示出,但是六组热图h1-h6将作为CNN的输出的分支而被输出并且被组合以获得最终的一组热图。
图12A示出了第一示例,其中六组热图中的每组热图具有与在前一阶段中生成的一组热图的分辨率不同的分辨率。即,在这个示例中,在CNN的第2个阶段至第6个阶段中的每个阶段中执行热图分辨率调节处理。相应地,在CNN的第3个阶段至第6个阶段中的每个阶段中执行特征图分辨率调节处理,以使得在CNN的第3个至第6个阶段中的每个阶段中,在当前阶段中生成的特征图的分辨率与在前一阶段(即紧接着的前一阶段)生成的热图的分辨率相同。
在这个第一示例中,通过保留具有N×N个像素的分辨率的一组热图,并且通过考虑具有不同分辨率的多组热图,可以高精度地实现人体关节部位检测。并且,鉴于CNN的六个阶段被执行一次,所以人体关节部位检测会是快速的。换句话说,根据这个第一示例,可以在维持人体关节部位检测精度的同时提高人体关节部位检测速度。因此,能够通过使用根据这个示例的方法来执行实时的关节部位检测任务。
图12B示出了其中前三组热图h1-h3具有不同分辨率而第三组热图至第六组热图h4-h6具有相同分辨率的第二示例。
在这个第二示例中,通过逐渐减小热图的分辨率,与第一示例相比,可以减小计算成本。同时,通过考虑具有不同分辨率的多组热图,可以高精度地实现人体关节部位检测。
应注意,虽然如图12B所示,热图的分辨率在连续的三个阶段(即,阶段1-阶段3)中变化,但是本公开不限于此。热图的分辨率的变化可以在三个不连续的阶段中发生。可替代地,与目标图像I的分辨率相比,第一组热图h1的分辨率可以保持不变。还可替代地,热图的分辨率的变化可以在彼此间隔开一个或多个阶段的两个阶段中发生。
图12C示出了其中仅第二组热图具有与第一组热图的分辨率不同的分辨率的第三示例。即,在这个示例中,仅在CNN的第二个阶段中执行热图分辨率调节处理。相应地,仅在CNN的第三个阶段中执行特征图分辨率调节处理。在这个第三示例中,即使仅在CNN的一个阶段中执行热图分辨率调节处理,仍然可以减少计算冗余。并且该方法的尺度不变性可以得到改善。
硬件实现
图13示出了根据本公开的示例性实施例的其中可应用本公开的一般硬件环境1300。
参考图13,现在将描述作为可应用于本公开的各方面的硬件设备的示例的计算设备1300。计算设备1300可以是被配置成执行处理和/或计算的任何机器,可以是但不限于工作站、服务器、台式计算机、膝上型计算机、平板计算机、个人数字助理、智能电话、便携式相机或其任意组合。上述装置100、300中的每一个可以整体或至少部分地由计算设备1300或类似的设备或系统来实现。
计算设备1300可以包括能够经由一个或多个接口与总线1302连接或者与总线1302通信的元件。例如,计算设备1300可以包括总线1302、一个或多个处理器1304、一个或多个输入设备1306以及一个或多个输出设备1308。一个或多个处理器1304可以是任何类型的处理器,并且可以包括但不限于一个或多个通用处理器和/或一个或多个专用处理器(诸如专用处理芯片)。输入设备1306可以是能够向计算设备输入信息的任何类型的设备,并且可以包括但不限于鼠标、键盘、触摸屏、麦克风和/或遥控器。输出设备1308可以是能够呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端和/或打印机。计算设备1300还可以包括非瞬态存储设备1310或与非瞬态存储设备1310连接,非瞬态存储设备1310可以是非瞬态的并且可以实现数据存储库的任何存储设备,并且可以包括但不限于盘驱动器、光学存储设备、固态存储装置、软盘、柔性盘、硬盘、磁带或任何其它磁性介质、紧凑型盘或任何其它光学介质、ROM(只读存储器)、RAM(随机存取存储器)、高速缓存存储器和/或任何其它存储器芯片或盒带、和/或计算机可以从其读取数据、指令和/或代码的任何其它介质。非瞬态存储设备1310可以是可从接口拆卸的。非暂态存储设备1310可以具有用于实现上述方法和步骤的数据/指令/代码。计算设备1300还可以包括通信设备1312。通信设备1312可以是能够与外部装置和/或与网络通信的任何类型的设备或系统,并且可以包括但不限于调制解调器、网络卡、红外通信设备、无线通信装备和/或诸如蓝牙TM设备、1302.11设备、WiFi设备、WiMax设备、蜂窝通信设施等的芯片组。
总线1302可以包括但不限于工业标准体系架构(ISA)总线、微通道体系架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)本地总线和外围组件互连(PCI)总线。
计算设备1300还可以包括工作存储器1314,工作存储器1314可以是可以存储对处理器1304的工作有用的指令和/或数据的任何类型的工作存储器,并且可以包括但不限于随机存取存储器和/或只读存储器设备。
软件要素可以位于工作存储器1314中,包括但不限于操作系统1316、一个或多个应用程序1318、驱动程序和/或其它数据和代码。用于执行上述方法和步骤的指令可以被包括在一个或多个应用程序1318中,并且上述装置100和300中的每一个的单元可以通过处理器1304读取并执行一个或多个应用程序1318的指令来实现。更具体地,热图生成单元110可以例如由处理器1304在执行具有执行步骤S210的指令的应用程序1318时实现。组合单元120可以例如由处理器1304在执行具有执行步骤S220的指令的应用程序1318时实现。预处理单元310可以例如由处理器1304在执行具有执行步骤S410的指令的应用程序1318时实现。并且,类似地,特征提取单元320、热图生成单元330、组合单元340和后处理单元350可以例如由处理器1304在执行具有分别执行步骤S420、S430、S440、S450的指令的应用程序1318时实现。软件要素的指令的可执行代码或源代码可以存储在非瞬态计算机可读存储介质(诸如上述(一个或多个)存储设备1310)中,并且可以在可能编译和/或安装的情况下被读入到工作存储器1314中。软件要素的指令的可执行代码或源代码也可以从远程位置下载。
从上述实施例中,本领域技术人员可以清楚地知晓,可以通过软件及必要的硬件来实现本公开,或者可以通过硬件、固件等来实现本公开。基于这种理解,可以部分地以软件形式来实现本公开的实施例。计算机软件可以存储在计算机的可读存储介质中,比如软盘、硬盘、光盘或闪存中。计算机软件包括使得计算机(例如个人计算机、服务站或网络终端)运行根据本公开的各个实施例的方法或其一部分的一系列指令。
已经这样描述了本公开,清楚的是,本公开可以以许多种方式变化。这些变化不被视为背离了本公开的精神和范围,而是对于本领域技术人员而言显而易见的所有这种修改意欲被包括在以下权利要求的范围中。
Claims (24)
1.一种用于检测对象的部位的装置,其特征在于,包括:
热图生成单元,被配置成接收包括对象的目标图像,并且对目标图像执行多个阶段的处理,其中所述多个阶段包括:
第一阶段,用于至少基于从目标图像提取的第一组特征图来生成第一组对象部位热图;以及
第二阶段,用于基于从目标图像提取的第二组特征图和在第一阶段中生成的第一组对象部位热图来生成第二组对象部位热图,其中第二组对象部位热图的分辨率与第一组对象部位热图的分辨率不同;以及
组合单元,被配置成组合在所述多个阶段中生成的多组对象部位热图,
其中,在第一阶段是所述多个阶段中的初级阶段的情况下,仅基于从目标图像提取的第一组特征图来生成第一组对象部位热图,以及
在第一阶段是所述多个阶段中的中间阶段的情况下,基于从目标图像提取的第一组特征图和在紧邻的前一阶段中生成的第三组对象部位热图来生成第一组对象部位热图。
2.如权利要求1所述的装置,还包括:
后处理单元,被配置成对从组合单元输出的一组组合的对象部位热图执行缩放操作和坐标变换以便获得对象的部位在输入图像中的位置,从该输入图像获得目标图像。
3.如权利要求1所述的装置,其中,所述多个阶段是构成卷积神经网络的两个或更多个阶段。
4.如权利要求1所述的装置,其中,在第二阶段中,通过执行热图分辨率调节处理来调节第二组对象部位热图的分辨率。
5.如权利要求4所述的装置,其中,所述热图分辨率调节处理包括用于减小第二组对象部位热图的分辨率的池化处理或用于增大第二组对象部位热图的分辨率的解卷积处理。
6.如权利要求1所述的装置,还包括:
特征提取单元,被配置成从目标图像中提取第一组特征图以及从目标图像中提取第二组特征图。
7.如权利要求1所述的装置,其中,第二组特征图的分辨率与第一组对象部位热图的分辨率相同。
8.如权利要求7所述的装置,其中,通过执行特征图分辨率调节处理来调节第二组特征图的分辨率。
9.如权利要求8所述的装置,其中,特征图分辨率调节处理包括用于减小第二组特征图的分辨率的池化处理或用于增大第二组特征图的分辨率的解卷积处理。
10.如权利要求1所述的装置,其中,第二组特征图的分辨率与第一组特征图的分辨率不同。
11.如权利要求1所述的装置,其中,组合单元还被配置成:
统一所述多组对象部位热图的分辨率;
计算分辨率已经被统一的所述多组对象部位热图的加权和。
12.如权利要求1所述的装置,其中,所述对象的部位包括人体的两个或更多个关节部位。
13.如权利要求12所述的装置,其中,所述多组对象部位热图中的每组对象部位热图内的对象部位热图的数量与人体的两个或更多个关节部位的数量对应。
14.如权利要求1所述的装置,其中,所述多个阶段还包括:
第三阶段,用于基于从目标图像提取的第三组特征图和在前一阶段中生成的第四组对象部位热图来生成第三组对象部位热图,
其中第三组对象部位热图的分辨率与第二组对象部位热图的分辨率以及第一组对象部位热图的分辨率不同,
并且其中所述第三阶段是第二阶段的下一个阶段或与第二阶段间隔开的阶段。
15.一种用于检测对象的部位的方法,其特征在于,包括:
接收包括对象的目标图像并且对目标图像执行多个阶段的处理,其中所述多个阶段包括:
第一阶段,用于至少基于从目标图像提取的第一组特征图来生成第一组对象部位热图;以及
第二阶段,用于基于从目标图像提取的第二组特征图和在第一阶段中生成的第一组对象部位热图来生成第二组对象部位热图,其中第二组对象部位热图的分辨率与第一组对象部位热图的分辨率不同;以及
组合在所述多个阶段中生成的多组对象部位热图,
其中,在第一阶段是所述多个阶段中的初级阶段的情况下,仅基于从目标图像提取的第一组特征图来生成第一组对象部位热图,以及
在第一阶段是所述多个阶段中的中间阶段的情况下,基于从目标图像提取的第一组特征图和在紧邻的前一阶段中生成的第三组对象部位热图来生成第一组对象部位热图。
16.如权利要求15所述的方法,其中,所述多个阶段是构成卷积神经网络的两个或更多个阶段。
17.如权利要求15所述的方法,其中,在第二阶段中,通过执行热图分辨率调节处理来调节第二组对象部位热图的分辨率。
18.如权利要求15所述的方法,还包括:
从目标图像中提取第一组特征图,以及
从目标图像中提取第二组特征图。
19.如权利要求15所述的方法,其中,第二组特征图的分辨率与第一组对象部位热图的分辨率相同。
20.如权利要求19所述的方法,其中,通过执行特征图分辨率调节处理来调节第二组特征图的分辨率。
21.如权利要求15所述的方法,其中,第二组特征图的分辨率与第一组特征图的分辨率不同。
22.如权利要求15所述的方法,其中,所述对象的部位包括人体的两个或更多个关节部位。
23.一种用于检测对象的部位的装置,其特征在于,包括:
至少一个处理器;以及
至少一个存储设备,所述至少一个存储设备存储有指令,当所述指令由所述至少一个处理器执行时使得所述至少一个处理器执行如权利要求15-22中的任一项所述的方法。
24.一种非瞬态计算机可读存储介质,其特征在于存储有指令,当所述指令由处理器执行时使得执行如权利要求15-22中的任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810147718.1A CN110163031B (zh) | 2018-02-13 | 2018-02-13 | 用于检测对象的部位的装置和方法及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810147718.1A CN110163031B (zh) | 2018-02-13 | 2018-02-13 | 用于检测对象的部位的装置和方法及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110163031A CN110163031A (zh) | 2019-08-23 |
CN110163031B true CN110163031B (zh) | 2023-10-20 |
Family
ID=67635260
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810147718.1A Active CN110163031B (zh) | 2018-02-13 | 2018-02-13 | 用于检测对象的部位的装置和方法及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110163031B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111950633A (zh) * | 2020-08-12 | 2020-11-17 | 深圳市商汤科技有限公司 | 神经网络的训练、目标检测方法及装置和存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016054778A1 (en) * | 2014-10-09 | 2016-04-14 | Microsoft Technology Licensing, Llc | Generic object detection in images |
US9424494B1 (en) * | 2016-01-28 | 2016-08-23 | International Business Machines Corporation | Pure convolutional neural network localization |
-
2018
- 2018-02-13 CN CN201810147718.1A patent/CN110163031B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110163031A (zh) | 2019-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110503703B (zh) | 用于生成图像的方法和装置 | |
US9773192B2 (en) | Fast template-based tracking | |
CN109711329B (zh) | 姿态估计及网络训练方法、装置和系统及存储介质 | |
CN111507333B (zh) | 一种图像矫正方法、装置、电子设备和存储介质 | |
CN113850833A (zh) | 使用降低分辨率的神经网络和先前帧的掩模的视频帧分割 | |
CN108875492B (zh) | 人脸检测及关键点定位方法、装置、系统和存储介质 | |
WO2020146911A2 (en) | Multi-stage multi-reference bootstrapping for video super-resolution | |
US11030750B2 (en) | Multi-level convolutional LSTM model for the segmentation of MR images | |
EP3158535A1 (en) | 3d face model reconstruction apparatus and method | |
CN110427915B (zh) | 用于输出信息的方法和装置 | |
CN111753801A (zh) | 人体姿态跟踪与动画生成方法及装置 | |
US20230048234A1 (en) | Real-time video overlaying display | |
CN110827301B (zh) | 用于处理图像的方法和装置 | |
CN108875506B (zh) | 人脸形状点跟踪方法、装置和系统及存储介质 | |
EP3340109B1 (en) | Shape prediction for face alignment | |
CN110827341A (zh) | 一种图片深度估计方法、装置和存储介质 | |
CN110163031B (zh) | 用于检测对象的部位的装置和方法及存储介质 | |
CN110189252B (zh) | 生成平均脸图像的方法和装置 | |
CN109711462B (zh) | 姿态估计及网络训练方法、装置和系统及存储介质 | |
CN113255429B (zh) | 一种视频中人体姿态估计与跟踪方法及系统 | |
US9684970B2 (en) | Fast adaptive estimation of motion blur for coherent rendering | |
CN113902789A (zh) | 图像特征处理、深度图像生成方法及装置、介质和设备 | |
CN110223220B (zh) | 一种处理图像的方法和装置 | |
CN108027647B (zh) | 用于与虚拟对象交互的方法和设备 | |
CN116934591A (zh) | 多尺度特征提取的图像拼接方法、装置、设备及存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |