CN108694369B - 基于图形图像来预测多个姿势 - Google Patents
基于图形图像来预测多个姿势 Download PDFInfo
- Publication number
- CN108694369B CN108694369B CN201810053868.6A CN201810053868A CN108694369B CN 108694369 B CN108694369 B CN 108694369B CN 201810053868 A CN201810053868 A CN 201810053868A CN 108694369 B CN108694369 B CN 108694369B
- Authority
- CN
- China
- Prior art keywords
- neural network
- predicted
- features
- image
- additional
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/211—Selection of the most significant subset of features
-
- 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/044—Recurrent networks, e.g. Hopfield 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/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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/74—Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
-
- 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
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
-
- 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
- G06V40/103—Static body considered as a whole, e.g. static pedestrian or occupant recognition
-
- 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/20—Movements or behaviour, e.g. gesture recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Image Analysis (AREA)
Abstract
本申请的各实施例涉及基于图形图像来预测多个姿势。预测神经网络接收数据并从数据提取特征。被包括在预测神经网络中的递归神经网络基于提取的特征来提供预测的特征。在一个实施例中,预测神经网络接收图像,并且该图像的特征被提取。递归神经网络基于提取的特征来预测特征,并且姿势基于预测的特征被预测。附加地或者备选地,附加姿势基于附加预测的特征被预测。
Description
技术领域
本公开内容总地上涉及人工智能领域。更具体地但非限制性地,本公开内容涉及模拟决策做出过程以及以其他方式基于图形图像来预测动作。
背景技术
实现计算机视觉和人工智能的***被用来预测人类动作。例如,机器人或计算机实现的程序部分地基于视觉输入(诸如从相机接收的图像)来与人类交互。包括相机的计算机***使用图像来提示与人类用户的交互,诸如握手或在用户界面上提供菜单选项。某些***使用一个或多个输入图像(例如,视频的帧)作为视觉输入以预测单个后续帧。然而,这些技术限于预测关于对象(例如,实现计算机视觉***的***的用户)的单个下一帧。单个“预测的”帧不足以准确地确定对象的意图。不准确地预测其用户的意图的计算机***将会引起挫败。在能够进行物理交互的***(诸如机器人)的情况中,不准确的预测可能危及用户。因此,开发技术以预测对象在未来某一时刻的姿势(例如,位置和地点)是有益的。
发明内容
本文描述了用于基于描绘对象的输入图像来预测对象的顺序姿势的实施例。在一个实施例中,预测神经网络包括沙漏神经网络的组件,其包括编码器神经网络(“编码器”)和解码器神经网络(“解码器”),以及递归神经网络(“RNN”)。编码器能够从接收的数据提取特征。解码器能够基于特征来确定输出。RNN能够基于记忆信息(诸如描述神经网络的先前状态的记忆信息)来修改接收的数据。在一个实施例中,预测神经网络利用在编码器和解码器之间的RNN被布置。编码器从数据提取特征。RNN接收提取的特征,并且基于描述预测神经网络的记忆来提供修改的特征。解码器基于修改的特征来产生输出。在一些情况中,预测神经网络重复与修改特征和产生输出有关的步骤,从而使得基于修改的特征的序列来产生输出的序列。
例如,预测神经网络接收描绘执行动作的人的图像。编码器从该图像提取所描绘的人的姿势的特征。提取的特征被提供给RNN。基于提取的特征,RNN产生一组预测的特征。预测的特征被提供给解码器网络。基于预测的特征,解码器网络产生表示在图像中被描绘的人的身体关节的预测的关键点。在一些情况中,RNN产生附加的一组预测的特征(例如,后续的一组特征)。附加预测的特征被提供给解码器神经网络,并且解码器神经网络产生另一组预测的关键点。在一些实施例中,与预测特征和预测关键点有关的技术被重复,从而生成一系列预测。在一些情况中,一系列预测的姿势基于各组预测的关键点被生成。
提到这些说明性实施例不是为了限制或限定本公开内容,而是提供用于辅助对其的理解的示例。在具体实施方式中讨论附加实施例,并且在那里提供进一步的描述。
附图说明
当参照附图阅读以下具体实施方式时,可以更好地理解本公开内容的特征、实施例和优点,在附图中:
图1是描绘根据某些实施例的包括预测神经网络的***的示例的框图;
图2是描绘根据某些实施例的包括预测神经网络和一个或多个部分预测神经网络的***的示例的框图;
图3是描绘根据某些实施例的包括具有层的预测神经网络的***的示例的框图;
图4是描绘根据某些实施例的包括具有跳跃连接的预测神经网络的***的示例的框图;
图5是描绘根据某些实施例的由解码器确定的关键点的表示的示例的示图;
图6是描绘根据某些实施例的包括具有层和跳跃连接的预测神经网络和一个或多个部分预测神经网络的***的示例的框图;
图7是描绘根据某些实施例的具有卷积长短期记忆架构的RNN的示例的框图;
图8是描绘根据某些实施例的具有卷积长短期记忆架构并且将空信息接收到存储器输入的RNN的示例的框图;
图9是描绘根据某些实施例的具有卷积长短期记忆架构并且将空信息接收到数据输入的RNN的示例的框图;
图10是描绘根据某些实施例的包括具有卷积长短期记忆架构的预测神经网络和一个或多个部分预测神经网络的***的示例的框图;
图11是描绘根据某些实施例的包括流解码器网络的***的示例的框图;
图12是描绘根据某些实施例的基于接收的输入图像来确定多个姿势的过程的示例的流程图;
图13是描绘根据某些实施例的用于确定被包括在接收的输入图像中的像素的视在(apparent)运动的过程的示例的流程图;并且
图14是根据某些实施例的包括预测神经网络的计算***的框图。
具体实施方式
本文描述了用于基于描绘对象的输入图像来预测对象的姿势的序列的某些实施例。如在上面讨论的,用于预测姿势的现有技术不提供基于单个输入图像的多个预测的姿势。本文描述的某些实施例使用预测神经网络以通过提取图像的特征、预测对提取的特征的变化以及基于预测的变化确定姿势来确定多个预测的姿势。通过预测附加变化,预测神经网络确定附加姿势的序列,由此预测对象在未来某一时刻的运动。基于视觉输入来预测人类运动的交互式机器能够准确地解释人类行为,并且能够以更自然的方式与人类交互。
提供以下示例来介绍本公开内容的某些实施例。在该示例中,预测神经网络接收输入图像,诸如执行动作的人类对象的图形表示。预测神经网络包括编码器、RNN和解码器。编码器从输入图像提取一个或多个特征(例如,图形质量)。RNN基于提取的特征来确定一组预测特征。预测的特征指示特征中的预期变化(例如,对对象在潜在未来图像中的外观的预测)。解码器基于预测的特征来确定一组预测的关键点(例如,图像对象的身体关节)。在某些情况中,由预测神经网络执行的步骤被重复,由此生成预测的特征集和关键点集的序列。基于预测的关键点来生成姿势的序列。例如,姿势重构模块确定一个或多个预测的姿势(例如,在骨架框架中被连接的关键点)。
在一些实施例中,预测神经网络包括流解码器。流解码器基于从RNN接收的预测特征来确定运动信息。例如,流解码器确定(例如,与投掷棒球的手有关的)特定特征在特定方向和距离中具有位移。图像重构模块基于运动信息来生成预测的图形图像。在一些情况中,这些步骤被重复,由此生成预测的图形图像的序列。
如本文所使用的,术语“神经网络”是指能够被训练以实现目标的一个或多个计算机实现的网络。除非另有指示,否则本文中对神经网络的引用包括一个神经网络或者被一起训练的多个相关的神经网络。
如本文所使用的,术语“图像”是指描绘主题的图形表示的数字图像。例如,图像使用像素或基于矢量的图形来表示人的描绘。在某些情况中,图像是独立的图像,诸如照片或绘图。附加地或者备选地,图像被包括在图像的集合(诸如现有视频内的帧)中。
如本文所使用的,术语“姿势”是指图像的对象的可见布置。例如,由图像描绘的人的姿势包括人的手臂、腿、躯干、头部、手或脚的可见布置。附加地或者备选地,姿势包括人在图像中的位置(例如,在图像的中心,靠近图像的边缘)。在一些情况中,不是对象的所有部分都在图像中可见。例如,在准备投掷棒球的人的图像中,人的躯干可以遮挡人的一些肢体。
为了简单起见,将参照人类对象和姿势来描述本文使用的示例。然而,将被理解的是,本文描述的一些或全部技术可以应用于非人类对象(例如,动物)、机械对象(例如,车辆、机器人)或艺术对象(例如,卡通角色、绘画、计算机生成的角色)以及这些对象的姿势。
如本文所使用的,术语“特征”是指图像的图形质量。在一些情况中,特征包括图像的部分,诸如像素的组。附加地或者备选地,特征包括图像的图形表示,诸如图像中的垂直边缘或图像中的圆形边缘的图形表示。附加地或者备选地,特征包括图像的变换,诸如图像的蓝色滤波变换(例如,从红绿蓝图像格式)。在一些情况中,特征包括图形质量的非图形表示,诸如基于在图像中被描绘的照明的数学梯度。
如本文所使用的,术语“关键点”是指图像对象的一个方面的表示。例如,关键点表示在图像中被描绘的人的身体关节。在一些情况中,一组关键点表示图像对象的多个方面(例如,对应于头部的第一关键点,对应于肩部的第二关键点)。附加地或者备选地,关键点与概率(例如,关节是关键点所在的概率)或标识(例如,头部,肩部,脚踝)相关联。
如本文所使用的,术语“视在运动”和“光流”是指多个图像之间的像素的估计的位移。例如,在投掷棒球的人的一系列图像中,描绘投掷臂的像素从肩部位置朝向地面向下移动。在一些情况中,视在运动由指示位移方向和位移距离的运动矢量表示。例如,描绘投掷臂的像素的视在运动包括具有朝向地面的位移方向、与肩部有关的像素的相对小的位移距离以及与手有关的像素的相对大的位移距离的运动矢量。
如本文所使用的,术语“预测”和“预测的”是指对可能的数据配置的估计。在一些情况中,如本文所述,预测的数据包括特征、关键点、像素的视在运动、姿势或与输入图像有关的其他数据的配置。
现在参考附图,图1是对包括预测神经网络101的***100的描绘。预测神经网络101包括多个组成神经网络,包括编码器110、RNN130和解码器140。在一些实施例中,RNN130被布置在编码器110和解码器140之间(例如,编码器的输出被提供给RNN,并且RNN的输出被提供给解码器)。附加地或者备选地,姿势重构模块150被包括在***100中。
在一些实施例中,诸如输入图像105之类的输入图像被提供给预测神经网络101。编码器110接收输入图像105并分析图像。基于该分析,编码器110确定输入图像105的特征。由编码器110确定的特征被提取,并且由编码器110提供该组提取的特征120。在一些情况中,如本文其他地方所述,经由跳跃连接提供提取的特征120中的一个或多个特征。
在一个实施例中,提取的特征120被RNN 130接收。在一些情况中,RNN 130将提取的特征120提供给解码器140。附加地或者备选地,RNN 130基于附加信息来修改提取的特征120,如本文其他地方所述,并且将修改的特征提供给解码器140。在一些情况中,提取的特征120或修改的特征中的一个或多个特征被提供给附加神经网络组件。例如,RNN 130向附加RNN提供一组修改的特征。在一些情况中,RNN 130包括一组多个RNN,如本文其他地方所述。
在一些实施例中,解码器140分析从RNN 130接收的提取的特征120或修改的特征。基于对这些特征的分析,解码器140确定估计的关键点,诸如关键点145。例如,解码器140估计包括由输入图像105描绘的对象的一个或多个身体关节的位置的关键点。附加地或者备选地,解码器140标识关键点的类型(例如,标识左肩)。在一些情况中,估计的关键点145由图形描绘(例如,热图)表示。附加地或者备选地,关键点145由指示与每个关键点相关联的概率的数据结构表示。在一些情况中,关键点由包括并非旨在用于人类解释的数据结构的数据结构表示。
在一个实施例中,关键点145被提供给姿势重构模块150。基于这些关键点,姿势重构模块150确定与输入图像105的对象相关联的姿势155。例如,如果关键点145包括用于图像对象的头部、肩部、右肘和右手的可能位置,则姿势重构模块150确定头部和每个肩部的位置之间的连接、右肩和右肘之间的连接以及右肘和右手之间的连接。姿势155基于确定的连接。在一些情况中,确定的姿势155由一个或多个图形描绘(例如,骨骼姿势)表示。附加地或者备选地,确定的姿势155由数据结构(在一些情况中包括不用于人类解释的数据结构)表示。
在一些情况中,包括预测神经网络101或其任何组件的神经网络被训练为执行上述功能。例如,向预测神经网络101提供来自训练数据集的一系列图像,并且对照训练数据集的已知输出来评估预测神经网络101的输出。在某些情况中,使用以位于图像中心的人类为特征的数据集来训练预测神经网络。附加地或者备选地,使用以位于图像中的不同位置(包括***位置)处的人类为特征的数据集来训练预测神经网络。人类姿势的训练数据集的一个示例是Penn Action数据集。然而,其他训练数据集可用。本领域技术人员将会理解,训练数据集影响神经网络的输出。例如,使用以动物(例如,马)为特征的数据集训练的预测神经网络提供描述有特征的动物的关键点的输出。
图2是对包括预测神经网络201的***200的描绘。在一些情况中,***200包括附加神经网络,诸如部分预测神经网络201a和部分预测神经网络201b。预测神经网络201包括编码器210、RNN 230和解码器240。部分预测神经网络201a包括RNN 230a和解码器240a。部分预测神经网络201b包括RNN 230b和解码器240b。
在一些实施例中,编码器210接收输入图像205并提取特征。提取的特征220被提供给RNN 230,RNN 230将提取的特征220提供给解码器240。解码器240基于提取的特征220来确定关键点245,并将关键点245提供给姿势重构模块250。姿势重构模块250基于提供的关键点245来确定第一姿势。例如,姿势255被姿势重构模块250确定。在一些情况中,姿势255与第一时间戳(诸如时间戳t=0)相关联。
在一些实施例中,RNN 230向一个或多个网络组件提供记忆信息,诸如记忆信息235。例如,RNN 230a接收记忆信息235和提取的特征220中的一种或多种。基于记忆信息235和提取的特征220,RNN230a确定一组预测的特征225a。预测的特征225a被提供给解码器240a。附加地或者备选地,解码器240a基于由RNN 230a提供的预测的特征225a来确定关键点245a。在一些情况中,关键点245a被提供给附加姿势重构模块250a。重构模块250a基于关键点245a来确定第二姿势,诸如预测的姿势255a。在一些情况中,预测的姿势255a与第二时间(诸如时间戳t=1)相关联。
在一些实施例中,附加记忆信息被提供给附加部分预测神经网络,并且如上所述确定附加的姿势。例如,RNN 230a将记忆信息235a提供给附加RNN 230b。基于记忆信息235a和提取的特征220,RNN230b确定一组预测的特征225b。预测的特征225b被提供给解码器240b。解码器240b确定关键点245b,关键点245b被提供给附加姿势重构模块250b。附加姿势(诸如预测的姿势255b)基于关键点245b被确定,并且与第三时间戳(诸如时间戳t=2)相关联。可以重复上述技术以产生与附加时间戳相关联的附加姿势。例如,RNN 230b将记忆信息235b提供给附加的RNN。
尽管神经网络201、201a和201b被描绘为单独的网络,但是其他配置是可能的。例如,通过将记忆信息235作为输入提供给RNN230,预测神经网络201分阶段地完成上述技术中的一些技术(例如,在第一阶段中确定与“t=0”相关联的姿势并且在第二阶段中确定与“t=1”相关联的姿势)。附加地或者备选地,诸如模块250之类的姿势重构模块分阶段地完成上述技术中的一些技术。
递归沙漏网络
在一些实施例中,预测神经网络包括递归沙漏网络,并且递归沙漏网络执行与特征提取、特征预测或关键点确定中的一种或多种有关的技术。在一些情况中,递归沙漏网络包括层,诸如编码器或解码器中的层。例如,编码器中的层对输入图像执行不同类型的分析。在一些情况中,每个特定编码器层基于由该层执行的特定分析来提供特征。附加地或者备选地,解码器中的层对接收的特征执行不同类型的分析,并且每个特定解码器层基于该层的特定分析来提供一组关键点。在一些情况中,每个特定编码器层与特定解码器层相关联。
在一些情况中,每个特定编码器层对接收的图像进行下采样,诸如以执行对该特定编码器层的分析。附加编码器层基于附加类型的编码器分析来执行附加下采样。在一些情况中,每一轮下采样都会降低输出图像的视觉质量,但是基于由该编码器层执行的相关分析来提供特征。附加地或者备选地,解码器层对接收的图像进行上采样,以便基于该解码器层的分析来提供一组关键点。附加解码器层基于附加类型的解码器分析来执行附加上采样。在一些情况中,预测神经网络在没有层(例如,没有递归沙漏网络)的情况中被实现,并且基于不包括下采样或上采样的分析来提供关键点。
在一些实施例中,多轮的下采样降低了接收的图像的视觉质量。例如,递归沙漏网络具有一系列的多个编码器层和一系列的多个关联的解码器层。这一系列的多个编码器层多次对接收的图像进行下采样(例如,针对每个编码器层有一轮下采样)。在多轮的下采样之后,图像具有相对不佳的视觉质量。如果一系列的多个关联的解码器层基于不佳质量的图像来提供关键点,则提供的关键点可能具有降低的准确性。提供由关联的编码器层接收的图像可以提高解码器层的输出的准确性。
在一些实施例中,跳跃连接将来自特定编码器层的信息携带到特定解码器层。例如,编码器层与关联的解码器层之间的跳跃连接提供未受该编码器层的下采样影响的图像。跳跃连接将接收的图像(例如,具有未受影响的视觉质量)提供给关联的解码器层,该解码器层部分地基于接收的图像(例如,未受影响的图像)来提供关键点。在一些情况中,基于经由跳跃连接提供的未受影响的图像,关联的解码器层提供具有提高的准确性的关键点。
在一些情况中,由包括跳跃连接的递归沙漏网络确定的关键点比在没有跳跃连接的情况中确定的关键点更紧密地匹配输入图像。附加地或者备选地,使用来自具有跳跃连接的递归沙漏网络的关键点来重构的姿势更准确地表示图像对象的姿势。
图3描绘了包括具有层的递归沙漏网络390的预测神经网络300的示例。递归沙漏网络390包括编码器310、RNN 301和解码器315。RNN 301接收来自编码器310的输出并向解码器315提供输入。编码器310能够从输入图像提取图像特征,并且解码器315能够基于来自RNN 301的输入来确定一个或多个关键点。
在一些情况中,预测神经网络300包括部分递归沙漏网络391。部分递归沙漏网络391包括RNN 303和解码器316。RNN 303接收来自编码器310和RNN 301中的一种或多种的输出,并向解码器316提供输入。解码器316能够基于来自RNN 303的输入来确定一个或多个预测的关键点。
在一些实施例中,编码器310以及解码器315和316中的每一个都包括多个层。编码器310中的每个层都与解码器315中的层相关联。例如,编码器层320与解码器层325相关联,并且编码器层330、340、350、360和370分别与解码器层335、345、355、365和375相关联。附加地或者备选地,编码器310中的每个层都与解码器316中的层相关联。例如,编码器层320与解码器层326相关联,并且编码器层330、340、350、360和370分别与解码器层336、346、356、366和376相关联。
在编码器310中,层320、330、340、350、360和370中的每个层都标识由编码器提取的一个或多个特征。例如,层320基于对输入图像的分析来标识特征321。附加地或者备选地,标识的特征是基于对输入图像和从附加层接收的信息的分析。例如,层330接收输入图像和来自层320的信息,并且基于对图像和接收的信息的分析来标识特征331。在一些情况中,标识的特征和与分析有关的附加信息相关联。例如,特征321与通过层320对输入图像的分析而生成的分析信息相关联。
在一些实施例中,编码器310向附加神经网络组件(诸如RNN301、RNN 303或两者)提供诸如数据380之类的数据。在一些情况中,数据380包括提取的特征中的一个或多个特征。例如,数据380包括特征321和331。附加地或者备选地,数据380包括与提取的特征相关联的分析信息。
在一些实施例中,RNN 301基于接收的数据380来生成输出数据,诸如输出数据385。在一些情况中,数据385包括提取的特征。附加地或者备选地,RNN 301基于接收的数据380来生成记忆信息,诸如记忆信息302。记忆信息指示数据的当前或最近状况,诸如由RNN接收的数据的最近状况。在一些情况中,特定的RNN接收空记忆信息,诸如全零的输入,或者接收表明最近状态与当前状况相同或类似的指示。响应于接收空记忆信息,RNN提供与接收的数据类似或相同的输出数据。例如,如果RNN 301未接收到记忆数据,则输出数据385与接收的数据380类似或相同。
在包括多个递归沙漏网络(或多个部分递归沙漏网络)的实施例中,RNN中的一个或多个RNN基于接收的记忆信息和接收的数据来生成输出数据。例如,RNN 303基于数据380和记忆信息302来生成输出数据386。在一些情况中,数据386包括预测的特征。由RNN 301输出的数据385与由RNN 303输出的数据386之间的差异与由RNN303接收的记忆信息302有关。附加地或者备选地,RNN 303生成附加记忆信息304,其被提供给附加网络组件,诸如能够确定预测的特征或预测的关键点中的一种或多种的附加部分递归沙漏网络(未在图3中示出)。
在一些实施例中,解码器中的层基于接收的特征来估计一个或多个关键点。在一些情况中,关键点与时间戳相关联。例如,在解码器315中,层325、335、345、355、365和375中的每个层分析被包括在输出数据385中的一个或多个提取的特征,并且基于该分析来估计一个或多个关键点。由解码器315的各层估计的关键点与第一时间戳(例如,t=0)相关联。附加地或者备选地,在解码器316中,层326、336、346、356、366和376中的每个层分析被包括在输出数据386中的一个或多个预测的特征,并基于该分析来估计一个或多个预测的关键点。由解码器316的各层估计的预测的关键点与第二时间戳(例如,t=1)相关联。
附加地或者备选地,解码器的第一层基于第二层的估计来估计关键点。例如,层365基于输出数据385和由层375提供的估计的关键点的组合来估计一个或多个关键点。
在一些情况中,包括预测的关键点的关键点被表示为一组检测图,诸如指示每个关键点的可能位置的热图。附加地或者备选地,关键点与标识的类型相关联,诸如将特定关键点标识为左肩。估计的关键点被提供给一个或多个姿势重构模块,如本文其他地方所述。
在一些实施例中,由特定编码器层提取的特征经由跳跃连接被提供给特定关联的解码器层。附加地或者备选地,与编码器层的分析相关联的信息经由跳跃连接被提供给特定关联的解码器层。在一些情况中,跳跃连接仅向解码器层提供与关联的编码器层有关的信息。附加地或者备选地,跳跃连接向解码器层提供与关联的编码器层有关的信息,以及与关联的编码器层从其接收输入的一个或多个附加编码器层有关的信息。在一些情况中,跳跃连接包括允许在特定编码器层与特定关联的解码器层之间传送信息的一个或多个连接。附加地或者备选地,跳跃连接包括在特定的一对相关联的层和与该特定的一对相关联的特定RNN之间的一个或多个连接。
图4描绘了包括具有跳跃连接的递归沙漏网络490的预测神经网络400的示例。递归沙漏网络490包括编码器410、解码器415,以及RNN 402、403、404、405、406和407。RNN402-407从编码器410接收输出并向解码器415提供输入。在一些情况中,编码器410能够从输入图像提取图像特征,并且解码器415能够基于来自RNN402-407的输入来确定一个或多个关键点。
在一些实施例中,编码器410和解码器415中的每个解码器包括多个层。编码器410中的每个层都与解码器415中的层相关联。例如,编码器层420与解码器层425相关联,并且编码器层430、440、450、460和470分别与解码器层435、445、455、465和475相关联。
在编码器410中,层420、430、440、450、460和470中的每个层都标识由编码器提取的一个或多个特征。在一些情况中,由层标识的特征和与分析有关的附加信息相关联。提取的特征、关联的信息或两者经由一个或多个跳跃连接被提供给附加神经网络组件。例如,编码器层420经由跳跃连接向RNN 402提供数据421。编码器层430经由第二跳跃连接向RNN403提供数据431。编码器层440经由第三跳跃连接向RNN 404提供数据441。编码器层450经由第四跳跃连接向RNN 405提供数据451。编码器层460经由第五跳跃连接向RNN 406提供数据461。编码器层470经由第六跳跃连接向RNN 407提供数据471。
在一些实施例中,递归沙漏网络490中的一个或多个RNN基于接收的数据来生成输出数据。例如,RNN 402-407各自基于相应接收的数据421、431、441、451、461和471来生成相应输出数据422、432、442、452、462和472。在一些情况中(例如,在时间戳t=0时),特定RNN接收空记忆信息,或者未接收到记忆信息,并且输出数据包括由与RNN共享跳跃连接的编码器层提取的一个或多个特征。附加地或者备选地(例如,在时间戳t>0时),特定RNN接收记忆信息,并且输出数据包括一个或多个基于由被跳跃连接到RNN的编码器层提取的特征的预测特征。
在包括多个递归沙漏网络(或多个部分递归沙漏网络)的实施例中,一个或多个RNN基于接收的记忆信息和接收的数据来生成输出数据。例如,RNN 402-407中的一个或多个RNN生成记忆信息(未在图4中示出)。在一些情况中,所生成的记忆信息被提供给附加网络组件,诸如被包括在部分递归沙漏网络(未在图4中示出)中的附加RNN。
在一些实施例中,解码器中的层基于经由跳跃连接从关联的编码器层接收的特征来估计一个或多个关键点。例如,在解码器415中,层425、435、445、455、465和475中的每个层基于对相应输出数据422、432、442、452、462和472的分析来估计一个或多个关键点。
在一些情况中,解码器提供由每个解码器层标识的关键点。附加地或者备选地,解码器基于由每个解码器层估计的关键点的组合来提供一组关键点。例如,解码器层425、435、445、455、465和475中的每个层提供表示与输入图像的对象相对应的身体关节的一组多个关键点。在一些情况中,基于对提供该组的特定解码器层的分析,每个特定组的关键点具有该组中的每个关键点的相应概率、位置和标识。解码器415基于由每个解码器层提供的组的组合来提供一组关键点。例如,基于层425、435、445、455、465和475中的一个或多个层被估计的“左肩”关键点的位置和概率的组合,解码器415提供被标识为具有关联的位置和概率的左肩的关键点。在一些情况中,由解码器层估计的关键点或基于解码器层的估计的关键点与时间戳相关联。
特征提取
在一些实施例中,编码器从输入图像提取一个或多个特征。提取的特征表示被包括在输入图像中的信息。例如,输入图像包括低级特征,诸如垂直或水平边缘、角落或输入图像的区域之间的色差。在一些情况中,较低级的特征与较高分辨率的图像相关联。附加地或者备选地,输入图像包括高级特征,诸如表示躯干的图像数据的块或表示照明的数据。在一些情况中,较高级的特征与较低分辨率的图像相关联。本文提供的特征示例是非限制性的,并且包括并非旨在用于图形表示的特征(例如,像素梯度、图像数据的数学变换)的附加特征是可能的。
在一些实施例中,被包括在编码器中的特定层接收输入图像或与输入图像有关的信息。例如,输入图像由能够提取较低级特征的第一层接收。输入图像具有相对高的分辨率(例如,输入图像的区域被明确区分)。基于输入图像,第一层提取一个或多个较低级特征,诸如边缘。在一些情况中,输入图像的高分辨率提高了提取的低级特征的准确性。例如,具有明确区分的像素区域的输入图像提高了提取像素区域的边缘的准确性。
在一个实施例中,第一层提供第一组提取的特征、与这些特征相关联的信息(例如,图像数据)或二者。例如,第一层经由跳跃连接向RNN提供特征和关联的信息。附加地或者备选地,第一层向第二层提供特征、关联的信息或二者。在一些情况中,关联的信息(例如图像数据)被调整。例如,高分辨率图像数据被调整为具有较低的分辨率。
基于经调整的信息,第二层提取第二组特征。在一些情况中,第二层将第二特征和关联的信息提供给第三层,将其经由跳跃连接提供给RNN,或者将其提供给两者。在一些情况中,关联信息也被调整,并且第三层基于该信息来提取第三组特征。
在一些情况中,附加层能够提取较高级的特征。例如,附加层接收包括被调整为具有相对低分辨率的图像数据的信息。基于相对低分辨率的数据,附加层提取一个或多个较高级的特征,诸如被标识为腿的像素区域。
在一些实施例中,基于编码器的实现方式,与提取特征、调整关联的信息和将经调整的信息提供给附加层或经由跳跃连接将其提供给RNN有关的技术被重复多次。附加地或者备选地,提取的特征、关联的信息或两者被提供给附加神经网络。例如,特征和信息被提供给能够基于提取的特征来预测特征和更多关键点的一个或多个部分递归沙漏网络。
对象姿势的检测
基于提取或预测的特征,解码器估计图像对象的关键点的位置。例如,解码器产生指示一组身体关节的可能位置的检测图。
图5描绘了由解码器确定的关键点的示例表示。在一个实施例中,预测神经网络基于诸如图像500之类的输入图像来确定关键点。在一些情况中,确定的关键点被表示为检测图,诸如检测图501、502、503、504、505、506、507、508、509、510、511、512和513。检测图指示特定关键点的估计位置。附加地或者备选地,每个关键点与估计位置的概率相关联。例如,检测图501-513各自经由黑白梯度来指示关键点的相应估计位置。仅仅为了方便而不是限制,每个检测图被示出为叠加在图像500的副本上。虽然检测图501-513被描绘为黑白图形图像,但是包括并非旨在用于人类解释的表示的其他表示也是可能的。例如,关键点表示包括热图,使得一系列颜色(例如,蓝色、白色、红色)对应于关键点的位置的概率。附加地或者备选地,关键点表示包括坐标***、数学数据结构或其他非图形表示。
在一些实施例中,关键点包括标识的类型。例如,由检测图501-513表示的关键点被标识为分别包括头部、右肩、左肩、右肘、左肘、右手、左手、右臀、左臀、右膝、左膝、右脚和左脚的身体关节的类型。在一些情况中,关键点作为一个集合而被关联。例如,由检测图501-513表示的关键点作为集合520而被关联。附加地或者备选地,关键点集合与附加信息(诸如关键点的标识的类型或与输入图像有关的信息)相关联。例如,关键点集合520与输入图像500和相应标识的类型相关联。仅仅为了方便而不是限制,关键点集合520被示出为叠加在图像500的副本上。
附加地或者备选地,基于关键点集合来估计姿势。例如,如至少关于图1被描述的,姿势重构模块接收一组关键点,诸如关键点集合520。基于每个关键点的估计位置、每个关键点的标识的类型以及指示哪些类型的关键点被连接的信息(例如,右肘连接到右手和右肩),产生估计的姿势,诸如姿势530。虽然姿势530被描绘为图形表示,但是包括并非旨在用于人类解释的表示的其他表示也是可能的。例如,姿势表示包括坐标系、数学数据结构或其他非图形表示。
在一些情况中,基于附加检测图来估计附加姿势。例如,时间戳为“t=1”的预测姿势基于预测的关键点的检测图(例如,基于预测的特征)。
特征预测
在一些实施例中,特征被提供给解码器。例如,被包括在预测神经网络或部分预测神经网络中的解码器提供一个或多个预测的关键点。附加地或者备选地,基于向被包括在预测神经网络中的生成特定的一组关键点的RNN提供的记忆信息,将时间戳与该特定的一组关键点相关联。
在一些实施例中,上述技术的各方面被组合。图6描绘了包括具有层和跳跃连接的递归沙漏网络690的预测神经网络600的示例。递归沙漏网络690包括编码器610、解码器615,以及RNN 602、603、604、605、606和607。RNN 602-607经由跳跃连接接收来自编码器610中的特定层的输出,并经由跳跃连接向解码器615中的关联层提供输入。RNN 602-607各自能够诸如基于经由相应跳跃连接被接收的数据来生成记忆信息,以及诸如向RNN 602a-607a中的相应的一个RNN提供记忆信息。编码器610能够从输入图像提取图像特征,并且解码器615能够基于来自RNN 602-607的输入来确定一个或多个关键点。
在一些情况中,预测神经网络600包括具有层和跳跃连接的部分递归沙漏网络691。部分递归沙漏网络691包括解码器616,以及RNN602a、603a、604a、605a、606a和607a。RNN 602a-607a接收由RNN602-607中的相应一个RNN生成的记忆信息。附加地或者备选地,RNN 602a-607a经由跳跃连接(未在图6中描绘)接收来自编码器610中的特定层的输出,并经由跳跃连接向解码器616中的关联的层提供输入。解码器616能够基于来自RNN 602a-607a的输入来确定一个或多个预测的关键点。附加地或者备选地,RNN 602a-607a各自能够诸如基于接收的记忆信息或经由相应跳跃连接被接收的数据中的一种或多种来生成记忆信息,以及向附加网络组件(诸如向被包括在附加部分递归沙漏网络中的附加RNN(未在图6中描绘))提供该记忆信息。
在一些实施例中,一个或多个RNN被配置为使用具有卷积长短期记忆架构(LSTM)的神经网络组件。图7至图9描绘了包括LSTM组件的RNN的示例。图7描绘了具有LSTM组件701和卷积组件702的RNN 700的示例。在通向LSTM组件701的连接704上接收第一输入,诸如时间t时的记忆信息。在通向LSTM组件701的连接703上并在通向卷积组件702的连接705上接收第二输入,诸如时间t时的一组数据。
在一个实施例中,LSTM组件701在连接706上提供第一数据输出。来自LSTM 701的第一输出基于时间t时的记忆信息和时间t时的数据集的组合。在一些情况中,来自LSTM701的第一输出包括指示的修改,诸如用来修改时间t时的数据集中的特定值的指示。修改的非限制性示例包括将权重应用于值(例如,将值乘以0和1之间的数字)、忘记值(例如,将值乘以零)或记住值(例如,将值乘以1)。
来自LSTM 701的第一输出经由连接706被接收作为卷积组件702的输入。附加地或者备选地,卷积组件702在连接707上提供第二数据输出。来自卷积组件702的第二输出基于时间t时的数据集和指示的修改的组合。在一些情况中,来自卷积组件702的第二输出包括修改的数据集。
附加地或者备选地,LSTM组件701在连接708上提供第三数据输出。来自LSTM 701的第三输出基于第一输入(诸如时间t时的记忆信息)以及在连接703上接收的数据集。在一些情况中,来自LSTM701的第三输出包括指示的存储器修改,诸如对由卷积组件702应用的修改的指示;指示的RNN 700的状态,诸如对在连接706或707中的一个或多个上存在的输出的指示;或描述时间t时的RNN 700的其他合适的信息。例如,连接708上的第三输出包括诸如应用于值的权重、忘记值或记住值之类的记忆信息。
图8描绘了具有LSTM组件801和卷积组件802的RNN 800的示例。在一些情况中,RNN800被包括在能够基于提取的特征来确定关键点(诸如与“t=0”的时间戳相关联的关键点)的递归沙漏网络中。
在一个实施例中,在通向LSTM组件801的连接804上接收第一输入,诸如时间t=0时的记忆信息。在一些情况中,在连接804上接收的记忆信息是空记忆信息。在通向LSTM组件801的连接803上并且在通向卷积组件802的连接805上接收第二输入,诸如从编码器接收的数据。在一些情况中,接收的数据包括由编码器提取的特征。
在一个实施例中,LSTM组件801在连接806上提供第一数据输出。来自LSTM 801的第一输出基于时间t=0时的记忆信息和包括提取的特征的数据集的组合。在一些情况中,来自LSTM 801的第一输出包括空修改。例如,基于在连接804上接收的空记忆信息,第一数据输出与在连接803上接收的数据类似或相同。
来自LSTM 801的第一输出经由连接806被接收作为卷积组件802的输入。附加地或者备选地,卷积组件802在连接807上提供第二数据输出。来自卷积组件802的第二输出基于在连接805上接收的数据和来自LSTM 801的第一输出的组合。在一些情况中,来自卷积组件802的第二输出包括数据集,该数据集包括与由编码器提取的特征相同或类似的特征。
附加地或者备选地,LSTM组件801在连接808上提供第三数据输出。来自LSTM 801的第三输出基于第一输入(诸如时间t=0时的记忆信息)和在连接803上接收的数据。在一些情况中,来自LSTM801的第三输出包括指示的记忆修改,诸如基于接收的数据集的修改的指示;指示的RNN 800的状态,诸如对在连接806或807中的一个或多个上存在的输出的指示;或描述时间t=0时的RNN 800的其他合适的信息。例如,连接808上的第三输出包括诸如应用于特征的权重、忘记特征或记住特征之类的记忆信息。
图9描绘了具有LSTM组件901和卷积组件902的RNN 900的示例。在一些情况中,RNN900被包括在能够基于预测的特征来预测关键点(诸如与“t>0”的时间戳相关联的预测的关键点)的部分递归沙漏网络中。
在一个实施例中,在通向LSTM组件901的连接904上接收第一输入,诸如记忆信息。在一些情况中,在连接904上接收的记忆信息由另一RNN提供。在通向卷积组件902的连接905上接收第二输入,诸如从编码器接收的数据。在一些情况中,接收的数据包括由编码器提取的特征。附加地或者备选地,在通向LSTM组件901的连接903上未接收数据或接收空数据(例如,全零)。
在一个实施例中,LSTM组件901在连接906上提供第一数据输出。来自LSTM 901的第一输出基于由另一个RNN提供的记忆信息。在一些情况中,来自LSTM 901的第一输出包括指示的修改,诸如用来修改数据集中的特定提取特征的指示。修改的非限制性示例包括将权重应用于特征、忘记特征或记住特征。
来自LSTM 901的第一输出经由连接906被接收作为卷积组件902的输入。附加地或者备选地,卷积组件902在连接907上提供第二数据输出。来自卷积组件902的第二输出基于在连接905上接收的数据和在连接906上接收的指示的修改的组合。在一些情况中,来自卷积组件902的第二输出包括修改的数据集,诸如一组预测的特征。附加地或者备选地,预测的特征与“t>0(例如,t=1,t=2...)”的时间戳相关联。
附加地或者备选地,LSTM组件901在连接908上提供第三数据输出。来自LSTM 901的第三输出基于第一输入(诸如时间t时的记忆信息)和在连接903上接收的数据。在一些情况中,来自LSTM 901的第三输出包括指示的记忆修改,诸如由卷积组件902应用的修改的指示;指示的RNN 900的状态,诸如在连接906或907中的一个或多个上存在的输出的指示;或描述时间t>0时的RNN 900的其他合适的信息。例如,连接908上的第三输出包括诸如应用于特征的权重、忘记特征或记住特征之类的记忆信息。
本文描绘和描述的示例神经网络仅用于说明性目的。设想到包括具有更少、类似或更多数量的组件和/或层的网络的另外配置,包括具有未知数量的组件和/或层的配置(例如,经由神经网络训练而生成的配置)。
姿势预测
在一些实施例中,预测神经网络或部分预测神经网络基于输入图像提供一个或多个预测的关键点。附加地或者备选地,基于关键点来重构姿势,并且该姿势与关键点的时间戳相关联。
在一些实施例中,上述技术的各方面被组合。图10描绘了包括递归沙漏网络1010的预测神经网络1000的示例。递归沙漏网络1010包括编码器1011、解码器1012,以及具有LSTM架构(诸如关于图8描述的LSTM 800)的RNN 1013。在一些情况中,递归沙漏网络1010包括层或跳跃连接中的一个或多个。
附加地或者备选地,预测神经网络1000包括一个或多个部分递归沙漏网络,诸如部分递归沙漏网络1020、1030和1040。部分递归沙漏网络1020、1030和1040包括相应解码器1022、1032和1042,以及各自具有LSTM架构(诸如关于图9描述的LSTM 900)的相应RNN1023、1033和1043。在一些情况中,部分递归沙漏网络1020、1030和1040中的每个部分递归沙漏网络都包括层或跳跃连接中的一种或多种。
在一些实施例中,网络1010、1020、1030和1040中的每个网络都提供相应的一组关键点。例如,输入图像1005被提供给递归沙漏网络1010。提取的特征和空记忆信息被提供给RNN 1013。附加地或者备选地,RNN 1013将记忆信息提供给RNN 1023。在一些情况中,递归沙漏网络1010向姿势重构模块1017提供一组关键点1015,并且模块1017基于关键点1015来生成姿势1019。
附加地或者备选地,来自RNN 1013的记忆信息和提取的特征被提供给RNN 1023,RNN 1023向RNN 1033提供记忆信息。在一些情况中,部分递归沙漏网络1020向姿势重构模块1027提供一组预测的关键点1025,并且模块1027基于预测的关键点1025来生成预测的姿势1029。
在一些情况中,来自RNN 1023的记忆信息和提取的特征被提供给RNN 1033,RNN1033向RNN 1043提供记忆信息。在一些情况中,部分递归沙漏网络1030向姿势重构模块1037提供一组预测的关键点1035,并且模块1037基于预测的关键点1035来生成预测的姿势1039。附加地或者备选地,来自RNN 1033的记忆信息和提取的特征被提供给RNN 1043。在一些情况中,部分递归沙漏网络1040向姿势重构模块1047提供一组预测的关键点1045,并且模块1047基于预测的关键点1045来生成预测的姿势1049。
在一些实施例中,基于***的实现方式,与预测姿势有关的技术被重复多次。例如,来自RNN 1043的记忆信息被提供给附加部分递归沙漏网络,并且附加姿势被预测。
光流预测
在一些实施例中,基于提取或预测的特征来估计像素位移。例如,基于从输入图像提取的特征,附加解码器确定输入图像的视在运动(例如,光流)。为了方便,而不是作为限制,附加解码器在本文中被称为流解码器。流解码器诸如通过估计图像中的像素的位移方向和距离来确定输入图像的视在运动。在一些情况中,像素的估计位移被表示为与像素相关联的矢量。在一些实施例中,流解码器确定图像中的一个或多个像素的估计位移。
在一些实施例中,流解码器基于预测的特征、预测的关键点或预测的姿势中的一个或多个来确定像素位移。例如,像素位移基于一组提取的特征(例如,具有“t=0”的时间戳)和一组预测的特征(例如,具有“t>0”的时间戳)之间的差异。附加地或者备选地,像素位移基于第一组预测特征(例如,具有“t=1”的时间戳)和第二组预测特征(例如,具有“t=2”的时间戳)之间的差异。
图11描绘了包括递归沙漏网络1110和一个或多个部分递归沙漏网络(诸如网络1120)的预测神经网络1100的示例。在一些情况中,网络1110和1120包括层、跳跃连接或LSTM架构中的一种或多种。
在一些实施例中,递归沙漏网络1110接收图像1105。递归沙漏网络1110提供一组关键点1115,其被提供给姿势重构模块1117。姿势重构模块基于关键点1115来估计姿势1119。在一些情况中,姿势1119与来自输入图像1105的信息相关联。例如,姿势1119与被包括在图像1105中的一个或多个像素的位置相关联。
附加地或者备选地,部分递归沙漏网络1120从网络1110接收提取的特征和记忆信息。在一些情况中,网络1120包括RNN 1123、解码器1122和流解码器1124。RNN 1123确定一组预测的特征,并将预测的特征提供给解码器1122。在一些情况中,解码器1122提供一组预测的关键点1125,并且姿势重构模块1127基于预测的关键点1125来提供预测的姿势1129。
附加地或者备选地,RNN 1123向流解码器1124提供预测的特征或关联的图像信息中的一种或多种。在一些情况中,流解码器1124确定与预测的特征相关联的像素的视在运动。例如,流解码器1124提供矢量信息1126。在一些情况中,矢量信息1126基于图像1105中的像素位置与由RNN 1123提供的预测特征的位置的比较。附加地或者备选地,矢量信息1126基于由网络1110提供的提取特征的位置与由RNN 1123提供的预测特征的位置的比较。
在一些实施例中,基于矢量信息1126来生成修改的图像。例如,图像重构模块1128接收矢量信息1126,并且基于矢量信息1126来生成修改的图像1130。附加地或者备选地,修改的图像1130基于来自输入图像1105的图像信息。
示例操作和***
图12是描绘用于基于接收的输入图像来确定多个姿势的过程1200的示例的流程图。在一些实施例中,诸如关于图1至图11描述的,执行一个或多个预测神经网络的计算设备通过执行合适的程序代码来实现图12中描述的操作。为了说明性目的,参考图1至图11中描绘的示例来描述过程1200。然而,其他的实现方式也是可能的。
在框1210处,过程1200包括接收输入图像。在一些实施例中,输入图像由预测神经网络接收,诸如关于图1描述的。在一些情况中,输入图像是图形图像,诸如包括像素的图像。
在框1220处,过程1200包括从接收的图像提取一个或多个特征。在一些情况中,特征由被包括在预测神经网络中的编码器提取。在一些情况中,特征由被包括在该编码器中的一个或多个层提取。
在框1230处,过程1200包括基于提取的特征来确定第一组关键点。在一些实施例中,第一组关键点由被包括在预测神经网络中的解码器确定,诸如关于图1描述的。在一些情况中,第一组关键点部分地基于经由跳跃连接接收的信息被确定。
在框1240处,过程1200包括基于第一组关键点来确定第一姿势。例如,第一姿势由姿势重构模块基于从解码器接收的关键点被确定。
在框1250处,过程1200包括基于提取的特征来确定一个或多个修改的特征。例如,RNN根据提取的特征来确定预测的特征。附加地或者备选地,修改的特征基于记忆信息,例如,从附加RNN接收的记忆信息。
在框1260处,过程1200包括基于修改的特征来确定第二组关键点。在一些实施例中,第二组关键点由被包括在部分预测神经网络中的解码器确定,诸如关于图2描述的。在一些情况中,第二组关键点部分地基于经由跳跃连接接收的信息被确定。
在框1270处,过程1200包括基于第二组关键点来确定第二姿势。例如,姿势重构模块基于一组预测的关键点来确定预测的姿势。
在一些实施例中,针对每个附加预测姿势来重复与框1250、1260和1270有关的操作。例如,记忆信息和提取的特征被提供给与附加姿势生成模块相关联的附加部分预测神经网络,如关于图2描述的。
图13是描绘用于确定被包括在接收的输入图像中的像素的视在运动的过程1300的示例的流程图。在一些实施例中,诸如关于图1至图12描述的,执行一个或多个预测神经网络的计算设备通过执行合适的程序代码来实现图13中描述的操作。为了说明性目的,参照图1至图12中描绘的示例来描述过程1300。然而,其他的实现方式也是可能的。
在框1310处,过程1300包括接收输入图像,例如关于图1描述的预测神经网络。在一些情况中,输入图像是图形图像,诸如包括像素的图像。
在框1320处,过程1300包括从接收的图像提取一个或多个特征。在一些情况中,特征由包含在预测神经网络中的编码器提取。在一些情况中,特征由被包括在编码器中的一个或多个层提取。
在框1330处,过程1300包括是基于提取的特征的一个或多个修改的特征。例如,RNN基于提取的特征来确定预测的特征。附加地或者备选地,修改者基于记忆信息,例如从附加RNN接收的记忆信息。
在一些实施例中,与1310、1320和1330有关的操作关于其他过程(诸如关于图11描述的过程1100)被执行。
在框1340处,过程1300包括基于修改的特征来确定运动矢量信息。在一些实施例中,运动矢量信息由被包括在部分预测神经网络中的流解码器来确定,诸如关于图11描述的。在一些情况中,运动矢量信息部分地基于经由跳跃连接接收的信息被确定。
在框1350处,过程1300包括基于运动矢量信息来确定修改的图像。例如,修改的图像由图像重构模块生成,诸如关于图11描述的。在一些情况中,修改的图像是基于与预测的姿势有关的像素的估计运动的预测图像。
任何合适的计算***或计算***组都可以用于执行本文描述的操作。例如,图14是描绘根据某些实施例的能够基于输入图像来预测一个或多个姿势的***的框图。
所描绘的计算***1401的示例包括通信地耦合到一个或多个存储器设备1404的一个或多个处理器1402。处理器1402执行计算机可执行程序代码或访问存储在存储器设备1404中的信息。处理器1402的示例包括微处理器、专用集成电路(“ASIC”)、现场可编程门阵列(“FPGA”)或其他合适的处理设备。处理器1402可以包括任意数量(包括一个)的处理设备。
存储器设备1404包括用于存储颜色选择***110、相关彩色图像135、点云模型130以及其他接收的或确定的值或数据对象的任何合适的非瞬态计算机可读介质。计算机可读介质可以包括能够向处理器提供计算机可读指令或其他程序代码的任何电子、光学、磁性或其他存储设备。计算机可读介质的非限制性示例包括磁盘、存储器芯片、ROM、RAM、ASIC、光存储装置、磁带或其他磁存储装置,或者处理设备可以从其中读取指令的任何其它介质。指令可以包括由编译器或解释器根据以任何合适的计算机编程语言(包括例如C、C++、C#、Visual Basic、Java、Python、Perl、JavaScript和ActionScript)编写的代码而生成的特定于处理器的指令。
计算***1401也可以包括若干外部或内部设备,诸如输入或输出设备。例如,计算***1401被示为具有输入/输出(“I/O”)接口1408,其可以接收来自输入设备的输入或向输出设备提供输出。总线1406也可以被包括在计算***1401中。总线1406可以通信地耦合计算***1401的一个或多个组件。
计算***1401执行程序代码,该程序代码将处理器1402配置为执行上面关于图1至图13描述的操作中的一个或多个操作。程序代码包括与例如编码器210、解码器240、RNN230、流解码器1124或执行本文描述的一个或多个操作的其他合适的应用或存储器结构中的一个或多个有关的操作。程序代码可以驻留在存储器设备1404或任何合适的计算机可读介质中,并且可以由处理器1402或任何其他合适的处理器来执行。在一些实施例中,如图14所示,上述的程序代码、编码器210、解码器240、RNN 230或流解码器1124被存储在存储器设备1404中。在另外或替代的实施例中,编码器210、解码器240、RNN 230或流解码器1124中的一种或多种以及上述程序代码被存储在经由数据网络可访问的一个或多个存储器设备中,诸如经由云服务可访问的存储器设备。
图14中描绘的计算***1401也包括至少一个网络接口1410。网络接口1410包括适合于建立到一个或多个数据网络1412的有线或无线的数据连接的任何设备或设备组。网络接口1410的非限制性示例包括以太网网络适配器、调制解调器和/或诸如此类。在一些实施例中,诸如远程***1415或数据源1416之类的一个或多个附加计算组件经由网络1412而连接到计算***1401,并且执行本文描述的操作中的一些。例如,远程***1415执行与姿势重构模块150或图像重构模块1128有关的操作。附加地或者备选地,数据源1416提供输入图像105。计算***1401能够使用网络接口1410与远程计算***1415和数据源1416中的一种或多种进行通信。尽管图14将远程计算***1415和数据源1416描绘为经由网络1412连接到计算***1401,包括作为计算设备1401的存储器1404中的程序进行操作的其他实施例也是可能的。
一般考量
本文阐述了许多具体细节以提供对所要求保护的主题的透彻理解。然而,本领域技术人员将会理解,可以在没有这些具体细节的情况中实践所要求保护的主题。在其他情况中,本领域普通技术人员将知道的方法、装置或***未被详细描述,以不使所要求保护的主题模糊。
除非另有特别说明,否则认识到,在整个该说明书中,利用诸如“处理”、“估算”、“计算”、“确定”和“标识”等术语的讨论是指诸如一个或多个计算机或一个或多个类似的电子计算设备的计算设备的以下动作或过程:其操纵或转换在计算平台的存储器、寄存器或其他信息存储设备、传输设备或显示设备内表示为物理电子或磁性量的数据。
本文讨论的一个或多个***不限于任何特定硬件架构或配置。计算设备可以包括提供以一个或多个输入为条件的结果的任何合适的组件布置。合适的计算设备包括访问所存储的软件的基于多用途微处理器的计算机***,该软件将计算***从通用计算装置编程或配置为实现本主题的一个或多个实施例的专用计算装置。在编程或配置计算设备时所要使用的软件中,任何合适的编程、脚本或其他类型的语言或语言的组合都可以用来实现本文包含的教导。
本文描述的神经网络组件可以具有各种实现方式。尽管为了清楚而将包括的示例描绘并描述为单独的神经网络组件,但是包括由同一组件或同一组组件执行的后续操作的其他配置也是可能的。
本文公开的方法的实施例可以在这样的计算设备的操作中执行。以上示例中给出的框的顺序可以变化——例如,框可以被重新排序、组合和/或分解成子框。某些框或过程可以并行执行。
本文中的“适于”或“配置为”的使用意味着开放和包含性的语言,其不排除适于或被配置为执行另外的任务或步骤的设备。此外,“基于”的使用意味着是开放和包含性的,因为“基于”一个或多个陈述的条件或值的过程、步骤、计算或其他动作实际上可以基于超出所陈述的那些的附加条件或值。本文包括的标题、列表和编号仅是为了便于说明,并不意味着限制。
虽然本主题已经关于其具体实施例得到详细描述,但是将会认识到,本领域技术人员在获得对前述内容的理解之后可以容易地产生对这样的实施例的变更、变化和等同物。因此,应当理解的是,本公开内容已经出于示例而非限制的目的被给出,并且不排除包括本主题的如对于本领域普通技术人员将是显而易见的这些修改、变化和/或添加。
Claims (20)
1.一种预测由图像描绘的对象的多个位置的方法,所述方法包括:
由预测神经网络接收描绘对象的图像,其中所述预测神经网络包括编码器神经网络、递归神经网络和解码器神经网络;
由所述编码器神经网络提取接收的所述图像的特征;
向所述递归神经网络提供提取的所述特征;
由所述递归神经网络确定对提取的所述特征的第一修改;
由所述递归神经网络基于所述第一修改来确定对提取的所述特征的第二修改;
由所述递归神经网络基于确定的所述第一修改来生成第一预测的特征并且基于确定的所述第二修改来生成第二预测的特征;
向所述解码器神经网络提供所述第一预测的特征和所述第二预测的特征;以及
由所述解码器神经网络生成第一组关键点和第二组关键点,其中所述第一组关键点中的每个关键点指示图像对象的相应部分的预测的位置并且所述第二组关键点中的每个关键点指示图像对象的所述相应部分的第二预测的位置。
2.根据权利要求1所述的方法,其中所述递归神经网络包括长短期记忆(LSTM)神经网络。
3.根据权利要求1所述的方法,其中所述递归神经网络基于以下各项的卷积来提供所述第一预测的特征:(i)提取的所述特征和(ii)描述所述第一修改的记忆信息。
4.根据权利要求1所述的方法,还包括:
由所述解码器神经网络标识所述第一组关键点中的每个关键点的类型;以及
基于所述第一组关键点中的每个关键点的标识的所述类型和指示标识的所述类型之间的联系的信息来生成姿势。
5.根据权利要求1所述的方法,还包括:
由被包括在所述编码器中的特定层从所述图像提取附加特征;
向附加递归神经网络提供提取的所述附加特征;
由所述附加递归神经网络确定对提取的所述附加特征的附加修改;
由所述附加递归神经网络基于所述附加修改来生成附加预测的特征;以及
由被包括在所述解码器神经网络中的关联的层基于所述附加预测的特征来生成附加的一组预测的关键点。
6.根据权利要求1所述的方法,还包括:
利用流解码器神经网络基于所述第一预测的特征来产生第一组运动矢量并且基于所述第二预测的特征来产生第二组运动矢量;
其中所述第一组运动矢量中的每个运动矢量和所述第二组运动矢量中的每个运动矢量对应于接收的所述图像中的相应像素。
7.根据权利要求6所述的方法,还包括:
基于来自所述第一组运动矢量的、对应于接收的所述图像中的所述相应像素的所述运动矢量来确定接收的所述图像中的每个像素的第一预测的位置;
基于接收的所述图像中的每个像素的所述第一预测的位置来生成第一图像;
基于来自所述第二组运动矢量的、对应于接收的所述图像中的所述相应像素的所述运动矢量来确定接收的所述图像中的每个像素的第二预测的位置;以及
基于接收的所述图像中的每个像素的所述第二预测的位置来生成第二图像。
8.一种体现用于从输入图像产生多个姿势的程序代码的非瞬态计算机可读介质,所述程序代码包括指令,所述指令在被处理器执行时,使得所述处理器执行操作,所述操作包括:
由预测神经网络接收描绘对象的图像,其中所述预测神经网络包括编码器神经网络、递归神经网络和解码器神经网络;
由所述编码器神经网络提取接收的所述图像的特征;
向所述递归神经网络提供提取的所述特征;
由所述递归神经网络确定对提取的所述特征的第一修改;
由所述递归神经网络基于所述第一修改来确定对提取的所述特征的第二修改;
由所述递归神经网络基于确定的所述第一修改来生成第一预测的特征并且基于确定的所述第二修改来生成第二预测的特征;
向所述解码器神经网络提供所述第一预测的特征和所述第二预测的特征;以及
由所述解码器神经网络生成第一组关键点和第二组关键点,其中所述第一组关键点中的每个关键点指示图像对象的相应部分的预测的位置并且所述第二组关键点中的每个关键点指示图像对象的所述相应部分的第二预测的位置。
9.根据权利要求8所述的非瞬态计算机可读介质,其中所述递归神经网络包括长短期记忆(LSTM)神经网络。
10.根据权利要求8所述的非瞬态计算机可读介质,其中所述递归神经网络基于以下各项的卷积来提供所述第一预测的特征:(i)提取的所述特征和(ii)描述所述第一修改的记忆信息。
11.根据权利要求8所述的非瞬态计算机可读介质,所述操作还包括:
由所述解码器神经网络标识所述第一组关键点中的每个关键点的类型;以及
基于所述第一组关键点中的每个关键点的标识的所述类型和指示标识的所述类型之间的联系的信息来生成姿势。
12.根据权利要求8所述的非瞬态计算机可读介质,所述操作还包括:
由被包括在所述编码器中的特定层从所述图像提取附加特征;
向附加递归神经网络提供提取的所述附加特征;
由所述附加递归神经网络确定对提取的所述附加特征的附加修改;
由所述附加递归神经网络基于所述附加修改来生成附加预测的特征;以及
由被包括在所述解码器神经网络中的关联的层基于所述附加预测的特征来生成附加的一组预测的关键点。
13.根据权利要求8所述的非瞬态计算机可读介质,所述操作还包括:
利用流解码器神经网络基于所述第一预测的特征来产生第一组运动矢量并且基于所述第二预测的特征来产生第二组运动矢量;
其中所述第一组运动矢量中的每个运动矢量和所述第二组运动矢量中的每个运动矢量对应于接收的所述图像中的相应像素。
14.根据权利要求13所述的非瞬态计算机可读介质,所述操作还包括:
基于来自所述第一组运动矢量的、对应于接收的所述图像中的所述相应像素的所述运动矢量来确定接收的所述图像中的每个像素的第一预测的位置;
基于接收的所述图像中的每个像素的所述第一预测的位置来生成第一图像;
基于来自所述第二组运动矢量的、对应于接收的所述图像中的所述相应像素的所述运动矢量来确定接收的所述图像中的每个像素的第二预测的位置;以及
基于接收的所述图像中的每个像素的所述第二预测的位置来生成第二图像。
15.一种用于从输入图像产生多个姿势的***,所述***包括:
用于由预测神经网络接收描绘对象的图像的装置,其中所述预测神经网络包括编码器神经网络、递归神经网络和解码器神经网络;
用于由所述编码器神经网络提取接收的所述图像的特征的装置;
用于向所述递归神经网络提供提取的所述特征的装置;
用于由所述递归神经网络确定对提取的所述特征的第一修改的装置;
用于由所述递归神经网络基于所述第一修改来确定对提取的所述特征的第二修改的装置;
用于由所述递归神经网络基于确定的所述第一修改来生成第一预测的特征并且基于确定的所述第二修改来生成第二预测的特征的装置;
用于向所述解码器神经网络提供所述第一预测的特征和所述第二预测的特征的装置;以及
用于由所述解码器神经网络生成第一组关键点和第二组关键点的装置,其中所述第一组关键点中的每个关键点指示图像对象的相应部分的预测的位置并且所述第二组关键点中的每个关键点指示图像对象的所述相应部分的第二预测的位置。
16.根据权利要求15所述的***,其中所述递归神经网络基于以下各项的卷积来提供所述第一预测的特征:(i)提取的所述特征和(ii)描述所述第一修改的记忆信息。
17.根据权利要求15所述的***,还包括:
用于由所述解码器神经网络标识所述第一组关键点中的每个关键点的类型的装置;以及
用于基于所述第一组关键点中的每个关键点的标识的所述类型和指示标识的所述类型之间的联系的信息来生成姿势的装置。
18.根据权利要求15所述的***,还包括:
用于由被包括在所述编码器中的特定层从所述图像提取附加特征的装置;
用于向附加递归神经网络提供提取的所述附加特征的装置;
用于由所述附加递归神经网络确定对提取的所述附加特征的附加修改的装置;
用于由所述附加递归神经网络基于所述附加修改来生成附加预测的特征的装置;以及
用于由被包括在所述解码器神经网络中的关联的层基于所述附加预测的特征来生成附加的一组预测的关键点的装置。
19.根据权利要求15所述的***,还包括:
用于利用流解码器神经网络、基于所述第一预测的特征来产生第一组运动矢量并且基于所述第二预测的特征来产生第二组运动矢量的装置;
用于其中所述第一组运动矢量中的每个运动矢量和所述第二组运动矢量中的每个运动矢量对应于接收的所述图像中的相应像素的装置。
20.根据权利要求19所述的***,还包括:
用于基于来自所述第一组运动矢量的、对应于接收的所述图像中的所述相应像素的所述运动矢量来确定接收的所述图像中的每个像素的第一预测的位置的装置;
用于基于接收的所述图像中的每个像素的所述第一预测的位置来生成第一图像的装置;
用于基于来自所述第二组运动矢量的、对应于接收的所述图像中的所述相应像素的所述运动矢量来确定接收的所述图像中的每个像素的第二预测的位置的装置;以及
用于基于接收的所述图像中的每个像素的所述第二预测的位置来生成第二图像的装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/481,564 US10096125B1 (en) | 2017-04-07 | 2017-04-07 | Forecasting multiple poses based on a graphical image |
US15/481,564 | 2017-04-07 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108694369A CN108694369A (zh) | 2018-10-23 |
CN108694369B true CN108694369B (zh) | 2023-01-10 |
Family
ID=61283440
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810053868.6A Active CN108694369B (zh) | 2017-04-07 | 2018-01-19 | 基于图形图像来预测多个姿势 |
Country Status (5)
Country | Link |
---|---|
US (2) | US10096125B1 (zh) |
CN (1) | CN108694369B (zh) |
AU (1) | AU2018200164B2 (zh) |
DE (1) | DE102018000068A1 (zh) |
GB (1) | GB2561277B (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10096125B1 (en) | 2017-04-07 | 2018-10-09 | Adobe Systems Incorporated | Forecasting multiple poses based on a graphical image |
US11481376B2 (en) | 2018-06-19 | 2022-10-25 | Salesforce, Inc. | Platform for handling data corruptions |
CN112513944A (zh) | 2018-07-23 | 2021-03-16 | 奇跃公司 | 用于头部姿势预测的深度预测器循环神经网络 |
US11164067B2 (en) * | 2018-08-29 | 2021-11-02 | Arizona Board Of Regents On Behalf Of Arizona State University | Systems, methods, and apparatuses for implementing a multi-resolution neural network for use with imaging intensive applications including medical imaging |
US11921291B2 (en) | 2018-11-15 | 2024-03-05 | Magic Leap, Inc. | Systems and methods for performing self-improving visual odometry |
US11087165B2 (en) * | 2018-11-29 | 2021-08-10 | Nec Corporation | Method and system for contextualizing automatic image segmentation and regression |
EP3667557B1 (en) * | 2018-12-13 | 2021-06-16 | Axis AB | Method and device for tracking an object |
CN109727240B (zh) * | 2018-12-27 | 2021-01-19 | 深圳开立生物医疗科技股份有限公司 | 一种三维超声图像的遮挡组织剥离方法及相关装置 |
WO2020142620A1 (en) * | 2019-01-04 | 2020-07-09 | Sony Corporation Of America | Multi-forecast networks |
US11023769B2 (en) * | 2019-01-16 | 2021-06-01 | Lenovo (Singapore) Pte. Ltd. | Modifying an image based on identifying a feature |
CN111798018A (zh) * | 2019-04-09 | 2020-10-20 | Oppo广东移动通信有限公司 | 行为预测方法、装置、存储介质及电子设备 |
US10970849B2 (en) * | 2019-04-16 | 2021-04-06 | Disney Enterprises, Inc. | Pose estimation and body tracking using an artificial neural network |
CN110335277A (zh) * | 2019-05-07 | 2019-10-15 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、计算机可读存储介质和计算机设备 |
CN110491088A (zh) * | 2019-07-26 | 2019-11-22 | 安徽泛米科技有限公司 | 一种区域滞留报警装置 |
US11488320B2 (en) | 2019-07-31 | 2022-11-01 | Samsung Electronics Co., Ltd. | Pose estimation method, pose estimation apparatus, and training method for pose estimation |
US10989916B2 (en) * | 2019-08-20 | 2021-04-27 | Google Llc | Pose prediction with recurrent neural networks |
CN112446240A (zh) * | 2019-08-29 | 2021-03-05 | 杭州海康威视数字技术股份有限公司 | 一种动作识别方法及装置 |
CN111292401B (zh) * | 2020-01-15 | 2022-05-03 | 腾讯科技(深圳)有限公司 | 动画处理方法、装置、计算机存储介质及电子设备 |
CN111274948B (zh) * | 2020-01-19 | 2021-07-30 | 杭州微洱网络科技有限公司 | 针对电商图像中人体脚部及鞋子关键点的检测方法 |
CN111291718B (zh) * | 2020-02-28 | 2022-06-03 | 上海商汤智能科技有限公司 | 行为预测方法及装置、步态识别方法及装置 |
JP7425479B2 (ja) * | 2020-05-01 | 2024-01-31 | Awl株式会社 | サイネージ制御システム、及びサイネージ制御プログラム |
CN111639605B (zh) * | 2020-06-01 | 2024-04-26 | 影子江湖文化(北京)有限公司 | 一种基于机器视觉的人体动作打分方法 |
CN112597896B (zh) * | 2020-12-23 | 2022-09-09 | 中国科学技术大学 | 基于无线信号的人体姿势成像方法及装置 |
US11804040B2 (en) * | 2021-03-17 | 2023-10-31 | Qualcomm Incorporated | Keypoint-based sampling for pose estimation |
CN115345931B (zh) * | 2021-12-15 | 2023-05-26 | 禾多科技(北京)有限公司 | 物体姿态关键点信息生成方法、装置、电子设备和介质 |
US20230281864A1 (en) * | 2022-03-04 | 2023-09-07 | Robert Bosch Gmbh | Semantic SLAM Framework for Improved Object Pose Estimation |
CN117623735B (zh) * | 2023-12-01 | 2024-05-14 | 广东雅诚德实业有限公司 | 高强度抗污日用陶瓷的生产方法 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8107527B1 (en) * | 2005-07-28 | 2012-01-31 | Teradici Corporation | Progressive block encoding using region analysis |
US8345768B1 (en) * | 2005-07-28 | 2013-01-01 | Teradici Corporation | Progressive block encoding using region analysis |
US8379074B2 (en) * | 2005-11-03 | 2013-02-19 | Broadcom Corporation | Method and system of tracking and stabilizing an image transmitted using video telephony |
US8386446B1 (en) * | 2009-10-26 | 2013-02-26 | Netapp, Inc. | Proxying search requests for files to a search engine |
US8583263B2 (en) * | 1999-02-01 | 2013-11-12 | Steven M. Hoffberg | Internet appliance system and method |
CN104615983A (zh) * | 2015-01-28 | 2015-05-13 | 中国科学院自动化研究所 | 基于递归神经网络和人体骨架运动序列的行为识别方法 |
CN104850891A (zh) * | 2015-05-29 | 2015-08-19 | 厦门大学 | 一种时间序列预测的智能优化递归神经网络方法 |
CN105373785A (zh) * | 2015-11-30 | 2016-03-02 | 北京地平线机器人技术研发有限公司 | 基于深度神经网络的手势识别检测方法与装置 |
CN106022527A (zh) * | 2016-05-27 | 2016-10-12 | 河南明晰信息科技有限公司 | 基于地图瓦片和lstm循环神经网络的轨迹预测方法和装置 |
CN106096568A (zh) * | 2016-06-21 | 2016-11-09 | 同济大学 | 一种基于cnn和卷积lstm网络的行人再识别方法 |
CN106203376A (zh) * | 2016-07-19 | 2016-12-07 | 北京旷视科技有限公司 | 人脸关键点定位方法及装置 |
CN106326837A (zh) * | 2016-08-09 | 2017-01-11 | 北京旷视科技有限公司 | 对象追踪方法和装置 |
CN106548475A (zh) * | 2016-11-18 | 2017-03-29 | 西北工业大学 | 一种适用于空间非合作自旋目标运动轨迹的预测方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6400996B1 (en) * | 1999-02-01 | 2002-06-04 | Steven M. Hoffberg | Adaptive pattern recognition based control system and method |
US7006881B1 (en) * | 1991-12-23 | 2006-02-28 | Steven Hoffberg | Media recording device with remote graphic user interface |
US6850252B1 (en) * | 1999-10-05 | 2005-02-01 | Steven M. Hoffberg | Intelligent electronic appliance system and method |
US5710590A (en) * | 1994-04-15 | 1998-01-20 | Hitachi, Ltd. | Image signal encoding and communicating apparatus using means for extracting particular portions of an object image |
US5796611A (en) * | 1994-10-04 | 1998-08-18 | Nippon Telegraph And Telephone Corporation | Weather forecast apparatus and method based on recognition of echo patterns of radar images |
DE10225025A1 (de) * | 2002-06-06 | 2003-12-24 | Aloys Wobben | Vorrichtung zum Handhaben von Rotorblättern |
EP2104338A3 (en) * | 2008-03-19 | 2011-08-31 | FUJIFILM Corporation | Autofocus system |
US8271887B2 (en) * | 2008-07-17 | 2012-09-18 | The Boeing Company | Systems and methods for whiteboard collaboration and annotation |
US8336049B2 (en) * | 2009-02-05 | 2012-12-18 | Vmware, Inc. | Virtual machine utility computing method and system |
EP3278317B1 (en) * | 2015-03-31 | 2022-11-16 | Sony Group Corporation | Method and electronic device |
KR102147361B1 (ko) * | 2015-09-18 | 2020-08-24 | 삼성전자주식회사 | 객체 인식 장치 및 방법, 객체 인식 모델 학습 장치 및 방법 |
US10096125B1 (en) | 2017-04-07 | 2018-10-09 | Adobe Systems Incorporated | Forecasting multiple poses based on a graphical image |
-
2017
- 2017-04-07 US US15/481,564 patent/US10096125B1/en active Active
-
2018
- 2018-01-08 DE DE102018000068.1A patent/DE102018000068A1/de active Pending
- 2018-01-09 AU AU2018200164A patent/AU2018200164B2/en active Active
- 2018-01-19 CN CN201810053868.6A patent/CN108694369B/zh active Active
- 2018-01-19 GB GB1800841.7A patent/GB2561277B/en active Active
- 2018-08-07 US US16/057,161 patent/US10475207B2/en active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8583263B2 (en) * | 1999-02-01 | 2013-11-12 | Steven M. Hoffberg | Internet appliance system and method |
US8107527B1 (en) * | 2005-07-28 | 2012-01-31 | Teradici Corporation | Progressive block encoding using region analysis |
US8345768B1 (en) * | 2005-07-28 | 2013-01-01 | Teradici Corporation | Progressive block encoding using region analysis |
US8379074B2 (en) * | 2005-11-03 | 2013-02-19 | Broadcom Corporation | Method and system of tracking and stabilizing an image transmitted using video telephony |
US8386446B1 (en) * | 2009-10-26 | 2013-02-26 | Netapp, Inc. | Proxying search requests for files to a search engine |
CN104615983A (zh) * | 2015-01-28 | 2015-05-13 | 中国科学院自动化研究所 | 基于递归神经网络和人体骨架运动序列的行为识别方法 |
CN104850891A (zh) * | 2015-05-29 | 2015-08-19 | 厦门大学 | 一种时间序列预测的智能优化递归神经网络方法 |
CN105373785A (zh) * | 2015-11-30 | 2016-03-02 | 北京地平线机器人技术研发有限公司 | 基于深度神经网络的手势识别检测方法与装置 |
CN106022527A (zh) * | 2016-05-27 | 2016-10-12 | 河南明晰信息科技有限公司 | 基于地图瓦片和lstm循环神经网络的轨迹预测方法和装置 |
CN106096568A (zh) * | 2016-06-21 | 2016-11-09 | 同济大学 | 一种基于cnn和卷积lstm网络的行人再识别方法 |
CN106203376A (zh) * | 2016-07-19 | 2016-12-07 | 北京旷视科技有限公司 | 人脸关键点定位方法及装置 |
CN106326837A (zh) * | 2016-08-09 | 2017-01-11 | 北京旷视科技有限公司 | 对象追踪方法和装置 |
CN106548475A (zh) * | 2016-11-18 | 2017-03-29 | 西北工业大学 | 一种适用于空间非合作自旋目标运动轨迹的预测方法 |
Non-Patent Citations (2)
Title |
---|
A Multi-Stream Bi-Directional Recurrent Neural Network for Fine-Grained Action Detection;Bharat Singh et al;《2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR)》;20160630;全文 * |
基于卷积神经网络和嵌套网络的目标跟踪算法研究;杨向南;《中国优秀硕士学位论文全文数据库信息科技辑》;20170215;全文 * |
Also Published As
Publication number | Publication date |
---|---|
AU2018200164A1 (en) | 2018-10-25 |
US10475207B2 (en) | 2019-11-12 |
GB2561277B (en) | 2019-06-05 |
GB2561277A (en) | 2018-10-10 |
AU2018200164B2 (en) | 2021-08-19 |
US20180357789A1 (en) | 2018-12-13 |
US10096125B1 (en) | 2018-10-09 |
DE102018000068A1 (de) | 2018-10-11 |
US20180293738A1 (en) | 2018-10-11 |
GB201800841D0 (en) | 2018-03-07 |
CN108694369A (zh) | 2018-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108694369B (zh) | 基于图形图像来预测多个姿势 | |
US11379987B2 (en) | Image object segmentation based on temporal information | |
CN109636831B (zh) | 一种估计三维人体姿态及手部信息的方法 | |
JP7178396B2 (ja) | 入力映像に含まれた客体の3次元ポーズの推定のためのデータを生成する方法およびコンピュータシステム | |
CN113496507A (zh) | 一种人体三维模型重建方法 | |
EP3987443A1 (en) | Recurrent multi-task convolutional neural network architecture | |
US10970849B2 (en) | Pose estimation and body tracking using an artificial neural network | |
CN112581370A (zh) | 人脸图像的超分辨率重建模型的训练及重建方法 | |
CN114581571A (zh) | 基于imu和前向变形场的单目人体重建方法及装置 | |
Elmquist et al. | Modeling cameras for autonomous vehicle and robot simulation: An overview | |
WO2022197024A1 (en) | Point-based modeling of human clothing | |
WO2021248432A1 (en) | Systems and methods for performing motion transfer using a learning model | |
AU2022241513B2 (en) | Transformer-based shape models | |
CN113255514B (zh) | 基于局部场景感知图卷积网络的行为识别方法 | |
CN115205487A (zh) | 单目相机人脸重建方法及装置 | |
CN112508776A (zh) | 动作迁移方法、装置和电子设备 | |
Xiang | Modeling Dynamic Clothing for Data-Driven Photorealistic Avatars | |
CN116645468B (zh) | 人体三维建模方法、训练人体结构生成模型的方法及装置 | |
CN113824898B (zh) | 一种视频生成方法、装置、电子设备及存储介质 | |
CN115984943B (zh) | 面部表情捕捉及模型训练方法、装置、设备、介质及产品 | |
US11170553B1 (en) | Methods and systems for generating an animation control rig | |
CN117576288A (zh) | 一种多场景处理数据的方法、装置、设备和可读存储介质 | |
CN114445676A (zh) | 一种手势图像处理方法、存储介质及设备 | |
CN116206357A (zh) | 宠物姿态识别模型的训练方法以及宠物姿态识别方法 | |
CN112232228A (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 |