CN115018918B - 三维坐标的确定方法、装置、电子设备及存储介质 - Google Patents

三维坐标的确定方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN115018918B
CN115018918B CN202210934386.8A CN202210934386A CN115018918B CN 115018918 B CN115018918 B CN 115018918B CN 202210934386 A CN202210934386 A CN 202210934386A CN 115018918 B CN115018918 B CN 115018918B
Authority
CN
China
Prior art keywords
joint
self
feature
attention
key point
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
Application number
CN202210934386.8A
Other languages
English (en)
Other versions
CN115018918A (zh
Inventor
曾良军
孙其民
陈小波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanchang Virtual Reality Institute Co Ltd
Original Assignee
Nanchang Virtual Reality Institute Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanchang Virtual Reality Institute Co Ltd filed Critical Nanchang Virtual Reality Institute Co Ltd
Priority to CN202210934386.8A priority Critical patent/CN115018918B/zh
Publication of CN115018918A publication Critical patent/CN115018918A/zh
Application granted granted Critical
Publication of CN115018918B publication Critical patent/CN115018918B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0012Biomedical image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Radiology & Medical Imaging (AREA)
  • Quality & Reliability (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Medical Informatics (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Image Processing (AREA)

Abstract

本申请提供了一种三维坐标的确定方法、装置、电子设备及存储介质,包括:获取关节的关节图像;根据关节关键点在所述关节图像中的二维坐标和所述关节图像所来源相机的相机内参,得到所述关节关键点的单位矢量;根据所述单位矢量、所述关节的关节长度和所述关节关键点在所述关节图像的相对深度,确定输入信息;将所述输入信息输入至自注意力模型进行长度值预测,得到所述关节关键点的预测长度值;根据所述单位矢量和所述预测长度值,确定所述关节关键点的三维坐标。本申请通过利用自注意力模型基于关节图像及关节长度来确定关节关键点的三维坐标,能够减小预测长度值的误差,进而,提高关节关键点的三维坐标的准确性。

Description

三维坐标的确定方法、装置、电子设备及存储介质
技术领域
本申请涉及人工智能技术领域,更具体地,涉及一种三维坐标的确定方法、装置、电子设备及存储介质。
背景技术
随着计算机视觉技术的快速发展,可使用神经网络来进行一些视觉处理。在相关技术中,虽然可通过使用循环神经网络或卷积神经网络根据关节图像来确定关节关键点的三维坐标,但是由于循环神经网络或卷积神经网络的结构会导致确定的关节关键点的三维坐标与实际相差较大。因此,如何减小利用神经网络确定关节关键点在的三维坐标所导致的误差是相关技术中亟待解决的技术问题。
发明内容
鉴于上述问题,本申请实施例提出了一种三维坐标的确定方法、装置、电子设备及存储介质,以改善上述问题。
根据本申请实施例的一个方面,提供了一种三维坐标的确定方法,包括:获取关节的关节图像;根据关节关键点在所述关节图像中的二维坐标和所述关节图像所来源相机的相机内参,得到所述关节关键点的单位矢量;根据所述单位矢量、所述关节的关节长度和所述关节关键点在所述关节图像的相对深度,确定输入信息;将所述输入信息输入至自注意力模型进行长度值预测,得到所述关节关键点的预测长度值,所述预测长度值是指所述关节关键点的三维坐标与原点之间的长度值;根据所述单位矢量和所述预测长度值,确定所述关节关键点的三维坐标。
根据本申请实施例的一个方面,提供了一种三维坐标的确定装置,包括:一种三维坐标的确定装置,所述装置包括:获取模块,用于获取关节的关节图像;单位矢量确定模块,用于根据关节关键点在所述关节图像中的二维坐标和所述关节图像所来源相机的相机内参,得到所述关节关键点的单位矢量;输入信息确定模块,用于根据所述单位矢量、所述关节的关节长度和所述关节关键点在所述关节图像的相对深度,确定输入信息;长度值预测模块,用于将所述输入信息输入至自注意力模型进行长度值预测,得到所述关节关键点的预测长度值,所述预测长度值是指所述关节关键点的三维坐标与原点之间的长度值;三维坐标确定模块,用于根据所述单位矢量和所述预测长度值,确定所述关节关键点的三维坐标。
在一些实施例中,所述自注意力模型包括第一自注意力模块、第二自注意力模块和预测模块。
在一些实施例中,所述长度值预测模块包括:第一自注意力计算子模块,用于将所述输入信息输入至所述第一自注意力模块进行第一自注意力计算,得到第一特征;第二自注意力计算子模块,用于将所述第一特征输入至所述第二自注意力模块进行第二自注意力计算,得到第二特征;长度值预测子模块,用于将所述第二特征输入至所述预测模块进行长度值预测,得到所述关节关键点的预测长度值。
在一些实施例中,第二自注意力计算子模块包括:第一加权计算单元,用于确定第一权重,并将所述第一特征与所述第一权重进行加权计算,得到第一自注意力特征;第二加权计算单元,用于确定第二权重,并将所述第一特征与所述第二权重进行加权计算,得到第二自注意力特征;第三加权计算单元,用于确定第三权重,并将所述第一特征与所述第三权重进行加权计算,得到第三自注意力特征;自注意力计算单元,用于将所述第一自注意力特征、所述第二自注意力特征和所述第三自注意力特征输入至所述第二自注意力模块进行第二自注意力计算,得到所述第二特征。
在一些实施例中,所述自注意力模型还包括第一多层感知器和第二多层感知器。
在一些实施例中,所述第二自注意力计算子模块还包括:第一处理单元,用于将所述第一特征输入至所述第一多层感知器进行有效特征提取,得到第一有效特征,并将所述第一有效特征输入至第二自注意力模块进行第二自注意力计算,得到第二特征。
在一些实施例中,所述长度值预测子模块包括:第二处理单元,用于将所述第二特征输入至所述第二多层感知器进行有效特征提取,得到第二有效特征,并将所述第二有效特征输入至预测模块进行长度值预测,得到所述关节关键点的预测长度值。
在一些实施例中,输入信息确定模块包括:预处理子模块,用于对所述单位矢量进行预处理得到目标单位矢量特征,对所述关节长度进行预处理得到目标关节长度特征,以及对所述相对深度进行预处理得到目标相对深度特征;输入信息确定子模块,用于根据所述目标单位矢量特征、所述目标关节长度特征和所述目标相对深度特征,确定所述输入信息。
在一些实施例中,预处理子模块包括:目标单位矢量特征确定单元,用于将所述单位矢量输入第一预处理网络得到单位矢量特征,并将第一信息添加至所述单位矢量特征中,得到所述目标单位矢量特征;目标关节长度特征确定单元,用于将所述关节长度输入第二预处理网络得到关节长度特征,并将第二信息添加至所述关节长度特征中,得到所述目标关节长度特征;目标相对深度特征确定单元,用于将所述相对深度输入第三预处理网络得到相对深度特征,并将第三信息添加至所述相对深度特征中,得到所述目标相对深度特征。
在一些实施例中,所述第一信息包括第一编码信息和第一先验信息,所述第二信息包括第二编码信息和第二先验信息,所述第三信息包括第三编码信息和第三先验信息。
根据本申请实施例的一个方面,提供了一种电子设备,包括:一个或多个处理器;存储器,与所述一个或多个处理器电连接;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个应用程序配置用于实现如上所述三维坐标的确定方法。
根据本申请实施例的一个方面,提供了一种计算机可读存储介质,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用实现如上所述三维坐标的确定方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品,包括计算机指令,所述计算机指令被处理器执行时实现如上所述三维坐标的确定方法。
在本申请的方案中,通过先根据关节图像中的关节关键点的二维坐标和关节图像所来源的相机的相机内参计算出关节关键点的单位矢量,并将关节关键点的单位矢量、关节关键点在关节图像中的相对深度和关节的关节长度来确定输入信息,并使用自注意力模型来对关节关键点的三维坐标与原点之间的长度值进行预测,以此得到关节关节关键点的三维坐标与原点之间的预测长度值,最后将预测长度值与关节关键点的单位矢量逐位相乘,进而得到该关节关键点的单位坐标。本申请的方案通过使用自注意力模型来进行长度值的预测,能够减小预测长度值的误差,进而提高关节关键点的三维坐标的准确性。
应当理解的是,以上的一般描述和后文细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1根据本申请一实施例示出的三维坐标的确定方法的流程图。
图2是根据本申请另一实施例示出的三维坐标的确定方法的流程图。
图3是根据本申请一实施例示出的步骤250的具体步骤流程图。
图4是根据本申请再一实施例示出的三维坐标的确定方法的流程图。
图5是根据本申请又一实施例示出的三维坐标的确定方法的流程图。
图6是根据本申请一实施例示出的步骤430的具体步骤流程图。
图7是根据本申请一实施例示出的三维坐标的确定过程的示意图。
图8是根据本申请一实施例示出的三维坐标的确定装置的框图。
图9示出了适于用来实现本申请实施例的电子设备的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本申请将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
图1是根据本申请一实施例示出的三维坐标的确定方法的流程图,本申请的方法可以由具备处理能力的电子设备执行,该电子设备例如服务器、云服务器等,在此不进行具体限定。如图1所示,该方法包括:
步骤110,获取关节的关节图像。
在本实施例中,该关节图像可以为灰度图像(灰阶图像),在灰度图像中,图像中每个像素可以由0(黑)到255(白)的亮度值(Intensity)表示。0-255之间表示不同的灰度级。在其他实施例中,该关节图像还可以是为RGB图像。
步骤120,根据关节关键点在所述关节图像中的二维坐标和所述关节图像所来源相机的相机内参,得到所述关节关键点的单位矢量。
关节关键点是指关节上具有关节标识作用的点,其可以是关节点、骨骼点等,当然,还可以是其他由用户自定义的点。可以理解的是,对于同一关节,其上可以包括多个关节关键点,在本申请的方案中,由于涉及计算关节的关节长度,因此,本申请中的关节关键点至少包括位于关节一个端部的第一关节关键点和该关节的另一个端部的第二关节关键点,当然,在具体实施方式中,还可以包括除第一关节关键点和第二关节关键点外的其他关节关键点。
例如,关节关键点可以是:手指的尖端位置的点、手指的远节指骨关节的指骨底的点、手指的指骨关节端部的点、手指与手掌的附着点的手掌指关节的点或手掌与人体前臂的附着点的腕部位置的点等。具体关节关键点数量以及位置可以根据实际需要设置,在此不进行具体限定。
在一些实施例中,可以预先针对关节设定关节关键点集合,从而,在步骤120中,在关节图像中定位该关节所对应的关节关键点集合中的关节关键点。可以理解的是,针对不同的关节,所设定的关节关键点集合中所包括的关节关键点是存在差异的。
关节关键点在关节图像中的二维坐标是指关节关键点在关节图像所在图像坐标系下的坐标。因此,在关节图像中定位到关节关键点所在的像素后,即可对应获得该关节关键点在该关节图像的二维坐标。
由于实际中,可能存在因图像不清晰等原因造成关节关键点定位错误的问题,为了保证后续确定的关节关键点的三维坐标的准确性,可以对关节图像进行降噪处理。
其中,关节关键点的单位矢量是指关节关键点的三维坐标与坐标原点之间的射线的单位矢量,即,与原点(0,0,0)之间的单位矢量。可选的,一关节关键点的单位矢量可以表示为
Figure 500485DEST_PATH_IMAGE001
,其中,在三维空间直角坐标系内,
Figure 89729DEST_PATH_IMAGE002
为与x轴,y轴,z轴方向相同的单位矢量,是表示空间矢量的一组基底,坐标表示为:
Figure 338308DEST_PATH_IMAGE003
Figure 467938DEST_PATH_IMAGE004
Figure 954414DEST_PATH_IMAGE005
。若一关节关键点的单位矢量前为负号,则表示该关节关键点中带有负号的矢量位于对应坐标轴的负半轴,例如,若一关节关键点的单位矢量为
Figure 511297DEST_PATH_IMAGE006
,其中,在三维空间直角坐标系中,对应位于x轴的坐标为(-1,0,0),对应位于z轴的坐标为(0,0,-1)。
在一些实施例中,可根据关节关键点在关节图像中的二维坐标和关节图像所来源相机的相机内参,计算得到关节关键点的中间三维坐标,对中间三维坐标进行正则化,得到关节关键点的单位矢量。
其中,相机内参包括相机的焦距和相机的光心的坐标,相机内参矩阵是根据相机的焦距和相机的光心的坐标构建的矩阵,该矩阵被称为相机内参矩阵,记为K,K为:
Figure 450434DEST_PATH_IMAGE007
其中
Figure 118176DEST_PATH_IMAGE008
是相机的焦距,
Figure 518546DEST_PATH_IMAGE009
是相机的光心的坐标。
对于世界坐标系中的一个点P,假设其在世界坐标系下的坐标为(X,Y,C),在相机的相机坐标系下,该点P的坐标为
Figure 449593DEST_PATH_IMAGE010
,基于相机,将该点进行透视投影到图像坐标系下该点P的坐标为(u,v),具体的坐标变换过程可以按如下公式描述:
Figure 876026DEST_PATH_IMAGE011
由上可以得到:
Figure 81879DEST_PATH_IMAGE012
又因为,
Figure 339685DEST_PATH_IMAGE013
可以看做是关节关键点在相机坐标系下的射线矢量,即
Figure 441634DEST_PATH_IMAGE014
,
若点P为本申请中的关节关键点,则上述的坐标
Figure 417680DEST_PATH_IMAGE010
视为该关节关键点的中间三维坐标,
Figure 161645DEST_PATH_IMAGE014
可视为本申请中的关节关键点在相机坐标系下的射线矢量。
在一些实施例中,对中间三维坐标可以先求得中间三维坐标与原点(0,0,0)之间的距离,即代表中间三维坐标向量的模长,然后根据该距离求得该关节关键点的单位矢量。例如,中间三维坐标为
Figure 477220DEST_PATH_IMAGE010
,与原点(0,0,0)之间的距离为:
Figure 546807DEST_PATH_IMAGE015
,对应求得关节关键点的单位矢量为:
Figure 744570DEST_PATH_IMAGE016
可选的,为了计算关节关键点的中间三维坐标,先对关节关键点的二维坐标补一维,得到
Figure 515996DEST_PATH_IMAGE017
,然后左乘相机内参矩阵的逆矩阵,得到中间三维坐标,记为
Figure 951657DEST_PATH_IMAGE018
Figure 457724DEST_PATH_IMAGE019
其中
Figure 80467DEST_PATH_IMAGE020
代表相机的相机内参矩阵的逆矩阵。
步骤130,根据所述单位矢量、所述关节的关节长度和所述关节关键点在所述关节图像的相对深度,确定输入信息。
关节关键点在关节图像中的相对深度是指以关节图像中一个或者多个像素点作为参考像素点,该关节关键点所在的像素相对于该参考像素点的深度值。
作为一种方式,可根据关节图像中各像素的深度信息和关节关键点在关节图像中的深度值,来计算关节关键点在关节图像中的相对深度。其中,关节图像中各像素的深度信息用于指示所对应像素在关节图像中的深度值。
可选的,在面向关节进行图像采集的过程中,同时采集该关节的关节图像,和采集该关节的深度图像,该深度图像中各像素点的值即为所对应像素点的深度值。同理,为了确定关节关键点对应的深度值,在深度图像中进行关节关键点定位,从而对应获取到该关节关键点的深度值。
在此基础上,获得各像素的深度值后,选取其中的一个像素点作为参考像素点,对应计算各关节关键点在关节图像中的相对深度。其中,参考像素点可以是关节图像中深度值最小的像素点,还可以是关节图像中中位深度值的像素点,当然还可以是其他的像素点,具体可根据实际需要进行设定。
当选取关节图像中深度值最小的像素点作为参考像素点,关节关键点的相对深度可按照如下公式计算得到:
Figure 697393DEST_PATH_IMAGE021
在一些实施例中,为了进行量纲统一,避免因关节图像中各像素点的深度值差异较大,导致所确定的相对深度值的范围较大,还可以将按照上述所计算得到的相对深度除与关节图像中最大深度值与最小深度值之差相除,将相除所得到的商作为关节关键点最终的相对深度,即,按照如下公式计算得到各关节关键点的相对深度:
Figure 518718DEST_PATH_IMAGE022
其中,在上述公式中,
Figure 133371DEST_PATH_IMAGE023
为关节关键点在该关节图像中的相对深度;
Figure 40147DEST_PATH_IMAGE024
为关节关键点的深度值;
Figure 398447DEST_PATH_IMAGE025
为关节图像中的最小深度值;
Figure 605437DEST_PATH_IMAGE026
为关节图像中的最大深度值。
作为一种方式,如上所述,关节的关节关键点可以包括指示关节的一个端部的第一关节关键点和关节的另一个端部的第二关节关键点;该关节的关节长度可以根据该第一关节关键点的坐标和第二关节关键点的坐标来确认。可选的,可通过计算第一关节关键点与第二关节关键点之间的欧式距离;将所计算得到的欧式距离,作为关节的预测关节长度。
作为一种方式,可对关节关键点的单位矢量、关节关键点的相对深度以及该关节的关节长度进行预处理,然后根据预处理后的关节关键点的单位矢量、关节关键点的相对深度以及该关节的关节长度来确定输入信息。可选的,输入信息可包括预处理后的关节关键点的单位矢量对应的特征、关节关键点的相对深度对应的特征以及该关节的关节长度对应的特征。
步骤140,将所述输入信息输入至自注意力模型进行长度值预测,得到所述关节关键点的预测长度值,所述预测长度值是指所述关节关键点的三维坐标与原点之间的长度值。
目前,可通过使用循环神经网络或卷积神经网络根据关节图像来进行关节关键点的三维坐标的确定,但是由于循环神经网络或卷积神经网络会出现信息传递的容量不足以及梯度消失问题,进而导致预测结果不准确。并且,使用循环神经网络或卷积神经网络无法将局部信息和全局信息进行结合。
在实际上,通常使用的循环神经网络或卷积神经网络只能建立短距离依赖关系。为了建立长距离的依赖关系,可以增加网络的层数或者使用全连接网络。但是全连接网络无法处理变长的输入序列,并且对于不同的输入长度,其连接权重的大小也是不同的。为了解决这个问题,可使用自注意力模型,来“动态”地生成不同连接的权重,并且能够同时将局部信息和全局信息进行结合来进行处理。
自注意力模型也被称为Transformer模型,在Transformer模型中的核心思想是自注意力机制(self-attention),即能注意输入序列的不同位置以计算该序列的表示的能力。可选的,该自注意力模型可以是多层自注意力层(self-attetion layers)组成的堆叠。可选的,该自注意力模型的自注意力模块的数量可根据实际需要来设定,在此不进行具体限定。
在一些实施例中,为了保证确定的关节关键点的三维坐标的准确性,需要预先将自注意力模型进行训练。具体的,预先构建样本集合,该样本集合包括多个样本图像和各样本图像中的关节关键点的实际三维坐标。
在训练过程中,将各样本图像分别输入至自注意力模型中,进行长度值预测,得到样本图像中各关节关键点对应的预测长度值,其中,样本图像为关节对应的关节图像,可选的,该关节图像可以是同一关节的关节图像,也可以是不同关节的关节图像。可以理解的是,该预测长度值是指样本图像中的关节关键点的三维坐标与原点(0,0,0)之间的长度值。
然后,根据样本图像中关节关键点的二维坐标以及该样本图像所来源的相机的相机内参矩阵计算出该样本图像中关节关键点的单位矢量。再将样本图像中关节关键点对应的预测长度值与对应的关节关键点的单位矢量计算出该样本图像中关节关键点的三维坐标。
之后基于该样本图像中关节关键点的三维坐标和该样本图像中关节关键点的实际三维坐标计算损失函数的损失值,如果该损失值不收敛,则反向调整自注意力模型的参数,并通过调整参数后的自注意力模型再次针对各样本图像输出进行预测,并再次计算损失函数的损失值,直至该损失值收敛。
针对每一样本图像,重复上述过程,当达到训练结束条件时,则结束自注意力模型的训练。之后,将该自注意力模型用于线上进行关节关键点的三维坐标确定,可以保证关节关键点的三维坐标的准确性,减小误差。
步骤150,根据所述单位矢量和所述预测长度值,确定所述关节关键点的三维坐标。
关节关键点的三维坐标是指关节关键点在世界坐标系下的坐标。可根据自注意力模型输出的预测长度值和关节关键点的单位矢量来计算关节关键点的三维坐标。
作为一种方式,可根据下述公式来计算关节关键点的三维坐标:
Figure 187728DEST_PATH_IMAGE027
其中,
Figure 782133DEST_PATH_IMAGE028
为总计长度值,
Figure 740862DEST_PATH_IMAGE029
为单位矢量。
在本申请的方案中,通过先根据关节图像中的关节关键点的二维坐标和关节图像所来源的相机的相机内参计算出关节关键点的单位矢量,并将关节关键点的单位矢量、关节关键点在关节图像中的相对深度和关节的关节长度来确定输入信息,并使用自注意力模型来对关节关键点的三维坐标与原点之间的长度值进行预测,以此得到关节关节关键点的三维坐标与原点之间的预测长度值,最后将预测长度值与关节关键点的单位矢量逐位相乘,进而得到该关节关键点的单位坐标。本申请的方案通过使用自注意力模型来进行长度值的预测,能够减小预测长度值的误差,进而提高关节关键点的三维坐标的准确性。
图2是根据本申请一实施例示出的三维坐标的确定方法的流程图,本申请的方法可以由具备处理能力的电子设备执行,该电子设备例如服务器、云服务器等,在此不进行具体限定。如图2所示,所述自注意力模型包括第一自注意力模块、第二自注意力模块和预测模块;该方法包括:
步骤210,获取关节的关节图像。
步骤220,根据关节关键点在所述关节图像中的二维坐标和所述关节图像所来源相机的相机内参,得到所述关节关键点的单位矢量。
步骤230,根据所述单位矢量、所述关节的关节长度和所述关节关键点在所述关节图像的相对深度,确定输入信息。
其中,步骤210-步骤230的具体描述请参阅步骤110-步骤130,在此不再赘述。
步骤240,将所述输入信息输入至所述第一自注意力模块进行第一自注意力计算,得到第一特征。
在一些实施例中,第一自注意力计算是利用输入信息中关节关键点的单位矢量对应的特征、关节的关节长度对应的特征以及关节关键点的相对深度对应的特征进行融合计算,以此得到第一特征。
可选的,可利用下述公式来进行第一自注意力计算:
Figure 271200DEST_PATH_IMAGE030
其中,
Figure 227655DEST_PATH_IMAGE031
为第一特征,
Figure 374603DEST_PATH_IMAGE032
为关节关键点的单位矢量对应的特征,
Figure 340285DEST_PATH_IMAGE033
为关节关键点的相对深度对应的特征,d为输入信息的维度,
Figure 990709DEST_PATH_IMAGE034
为该关节的关节长度对应的特征,
Figure 118065DEST_PATH_IMAGE035
函数是用于在多分类过程中,将多个输出映射到(0,1)区间内,在本申请的实施例中,
Figure 689992DEST_PATH_IMAGE035
函数用于对
Figure 724944DEST_PATH_IMAGE036
进行归一化处理。
可选的,若输入信息中的特征均为一维特征,则上述第一注意力计算公式变为:
Figure 761033DEST_PATH_IMAGE037
函数进行归一化计算的公式如下所示:
Figure 56360DEST_PATH_IMAGE038
其中,Z为一数组,j为该数组的元素个数,i为当前元素的值。在另一些实施例中,也可使用其他函数来进行归一化计算,在此不进行具体限定。
步骤250,将所述第一特征输入至所述第二自注意力模块进行第二自注意力计算,得到第二特征。
在一些实施例中,得到第一特征后,需要对第一特征进行第二自注意力计算,进而能够根据该第二特征来进行预测。
可选的,可利用
Figure 115583DEST_PATH_IMAGE035
函数来进行第二自注意力计算。
作为一种方式,可设置不同的权重,并将第一特征与各权重进行加权计算,然后将加权计算后的特征进行自注意力计算。
在一些实施例中,如图3所示,步骤250包括:
步骤251,确定第一权重,并将所述第一特征与所述第一权重进行加权计算,得到第一自注意力特征。
作为一种方式,第一权重可以是由第二自注意力模块设置的,也可以是由工程师设置。
可选的,将第一特征与第一权重相乘,得到第一自注意力特征。例如,
Figure 954226DEST_PATH_IMAGE039
Figure 579243DEST_PATH_IMAGE040
,其中,
Figure 48401DEST_PATH_IMAGE041
为第一权重,
Figure 391658DEST_PATH_IMAGE042
为第一特征,Q为第一自注意力特征。
步骤252,确定第二权重,并将所述第一特征与所述第二权重进行加权计算,得到第二自注意力特征。
在本实施例中,第二权重与第一权重不同。可选的,将第一特征与第二权重相乘,得到第二自注意力特征。例如,
Figure 237254DEST_PATH_IMAGE043
,其中,
Figure 716777DEST_PATH_IMAGE044
为第二权重,
Figure 622416DEST_PATH_IMAGE042
为第一特征,
Figure 187390DEST_PATH_IMAGE045
为第二自注意力特征。
步骤253,确定第三权重,并将所述第一特征与所述第三权重进行加权计算,得到第三自注意力特征。
在本实施例中,第三权重与第一权重和第二权重均不相同。可选的,将第一特征与第三权重相乘,得到第三自注意力特征。例如,
Figure 367835DEST_PATH_IMAGE046
,其中,
Figure 967444DEST_PATH_IMAGE047
为第三权重,
Figure 775475DEST_PATH_IMAGE042
为第一特征,V为第三自注意力特征。
步骤254,将所述第一自注意力特征、所述第二自注意力特征和所述第三自注意力特征输入至所述第二自注意力模块进行第二自注意力计算,得到所述第二特征。
可选的,第二自注意力模块与第一自注意力模块可以是参数不同的自注意力模块。可选的,第一自注意力模块与第二自注意力模块进行堆叠,即第一自注意力模块的输出为第二自注意力模块的输入。
在一些实施例中,可利用下述公式来进行第二自注意力计算:
Figure 827745DEST_PATH_IMAGE048
其中,
Figure 811882DEST_PATH_IMAGE049
为第二特征;Q为第一自注意力特征;
Figure 265997DEST_PATH_IMAGE050
为第二自注意力特征的转置矩阵;V为第三自注意力特征;d为第一自注意力特征、第二自注意力特征和第三自注意力特征的维度。可选的,在本申请的实施例中,第一自注意力特征、第二自注意力特征和第三自注意力特征的维度相同。
在自注意力机制中,上述Q、
Figure 247859DEST_PATH_IMAGE045
、V分别为输入的3个表征,分别被称为键(key)、查询(query)和值(value),利用该3个表征来进行自注意力计算。
可选的,当第一自注意力特征、第二自注意力特征和第三自注意力特征的维度为一维时,利用下述公式来进行第二自注意力计算:
Figure 53004DEST_PATH_IMAGE051
在一些实施例中,自注意力模块的输入的数量和维度与输出的数量和维度相同,即若自注意力模块的输入为n个d维数据,则自注意力模块的输出也为n个d维数据。
请继续参阅图2,步骤260,将所述第二特征输入至所述预测模块进行长度值预测,得到所述关节关键点的预测长度值。
在一些实施例中,预测模块可以是多层感知器,也可以是其他神经网络构建的预测模块,在此不进行具体限定。其中,多层感知器(Multilayer Perceptron,MLP)是一种前向结构的人工神经网络,将一组输入向量映射到一组输出向量。MLP可以被看作是一个有向图,由多个的节点层所组成,每一层都全连接到下一层。除了输入节点,每个节点都是一个带有非线性激活函数的神经元。可选的,可使用反向传播算法的监督学习方法用来训练MLP。
可选的,若输入的第二特征为n个,该预测模块对应输出n个预测长度值。
步骤270,根据所述单位矢量和所述预测长度值,确定所述关节关键点的三维坐标。
其中,步骤270的具体描述请参阅步骤150,在此不再赘述。
在本申请的实施例中,与图1所示的实施例相比,通过使用第一自注意力模块和第二自注意力模块进行堆叠来进行两次自注意力计算,以此能够显小自注意力计算的误差,提高精度,进而提高预测长度值的准确性。
图4是根据本申请一实施例示出的三维坐标的确定方法的流程图,本申请的方法可以由具备处理能力的电子设备执行,该电子设备例如服务器、云服务器等,在此不进行具体限定。如图4所示,所述自注意力模型还包括第一多层感知器和第二多层感知器;该方法包括:
步骤310,获取关节的关节图像。
步骤320,根据关节关键点在所述关节图像中的二维坐标和所述关节图像所来源相机的相机内参,得到所述关节关键点的单位矢量。
步骤330,根据所述单位矢量、所述关节的关节长度和所述关节关键点在所述关节图像的相对深度,确定输入信息。
步骤340,将所述输入信息输入至所述第一自注意力模块进行第一自注意力计算,得到第一特征。
其中,步骤310-步骤340的具体描述请参阅步骤110-步骤130和步骤240,在此不再赘述。
步骤350,将所述第一特征输入至所述第一多层感知器进行有效特征提取,得到第一有效特征,并将所述第一有效特征输入至第二自注意力模块进行第二自注意力计算,得到第二特征。
在一些实施例中,由于在采集关节图像的过程中会由于各种原因导致关节图像带有噪声,根据关节图像来确定关节图像中关节关键点的三维坐标会因为关节图像的噪声导致关节关键点的二维坐标、关节关键点的相对深度中也会出现噪声。并且在进行自注意力计算的过程中,需要忽略输入信息中的无关信息而关注输入信息中的重点信息,即需要对输入信息进行特征提取。
作为一种方式,为了提高最终的预测长度值的处理效率,通过利用第一多层感知器来对第一特征进行有效特征提取,进而第二自注意力模块能够根据提取的第一有效特征来进行第二自注意力计算。
在一些实施例中,第一自注意力模块与第一多层感知器可视为一个整体,其中,第一自注意力模块的输出作为第一多层感知器的输入。可选的,一个自注意力模块与一个多层感知器可构成最简单的自注意力模型。
步骤360,将所述第二特征输入至所述第二多层感知器进行有效特征提取,得到第二有效特征,并将所述第二有效特征输入至预测模块进行长度值预测,得到所述关节关键点的预测长度值。
在一些实施例中,可在第二自注意力模块后堆叠一多层感知器,以此来对第二特征中的有效特征进行提取,进而预测模块能够根据第二有效特征来进行长度值预测,以此提高预测长度值的准确性。
作为一种方式,可将第二自注意力模块和第二多层感知器视为一个整体,其中,第二自注意力模块的输出作为第二多层感知器的输入。可选的,将第一自注意力模块和第一多层感知器的整体与第二自注意力模块和第二多层感知器的整体进行堆叠。其中,第一多层感知器的输出作为第二自注意力模块的输入。可选的,将预测模块也与第二自注意力模块和第二多层感知器的整体进行堆叠,其中,第二多层感知器的输出作为预测模块的输入。
步骤370,根据所述单位矢量和所述预测长度值,确定所述关节关键点的三维坐标。
其中,步骤370的具体描述请参阅步骤150,在此不再赘述。
在本申请的实施例中,与上述实施例相比,通过分别在第一自注意力模块和第二自注意力模块后堆叠第一多层感知器和第二多层感知器,以此来对进行自注意力计算后得到的特征进行有效特征的提取,以此保证了预测长度值的准确性,并且预测模块根据第二有效特征进行长度值预测能够提高模型的处理效率。
图5是根据本申请一实施例示出的三维坐标的确定方法的流程图,本申请的方法可以由具备处理能力的电子设备执行,该电子设备例如服务器、云服务器等,在此不进行具体限定。如图5所示,该方法包括:
步骤410,获取关节的关节图像。
步骤420,根据关节关键点在所述关节图像中的二维坐标和所述关节图像所来源相机的相机内参,得到所述关节关键点的单位矢量。
其中,步骤410和步骤420的具体描述请参阅步骤110和步骤120,在此不再赘述。
步骤430,对所述单位矢量进行预处理得到目标单位矢量特征,对所述关节长度进行预处理得到目标关节长度特征,以及对所述相对深度进行预处理得到目标相对深度特征。
在一些实施例中,可分别利用第一预处理网络对关节关键点的单位矢量进行预处理,利用第二预处理网络对关节的关节长度进行预处理,利用第三预处理网络对关节关键点的相对深度进行预处理。其中,第一预处理网络、第二预处理网络、第三预处理网络可以是由全连接神经网络构建的,在其他实施例中,也可以由其他神经网络构建。
作为一种方式,可通过第一预处理网络、第二预处理网络、第三预处理网络对应获得关节关键点的单位矢量的一维特征、关节的关节长度的一维特征、关节关键点的相对深度的一维特征,然后设置单位矢量对应的第一可学习参数、关节长度对应的第二可学习参数以及相对深度对应的第三可学习参数,分别将关节关键点的单位矢量的一维特征与第一可学习参数进行融合,以此得到目标单位矢量特征;将关节的关节长度的一维特征与第二可学习参数进行融合,以此得到目标关节长度特征、将关节关键点的相对深度的一维特征与第三可学习参数进行融合,以此得到目标相对深度特征。其中,可学习参数是指该参数在训练或应用过程中可自动学习改变的参数。
可选的,第一可学习参数的数量与该关节图像中的关节关键点的数量相同,同理,第二可学习参数的数量和第三可学习参数的数量均与该关节图像中的关节关键点的数量相同。例如,若该关节图像中有n个关节关键点,则在本实施例中,有n个第一可学习参数、n个第二可学习参数以及n个第三可学习参数。可选的,n个第一可学习参数不同。
在一些实施例中,利用第一预处理网络对关节关键点的单位矢量进行预处理,利用第二预处理网络对关节的关节长度进行预处理,利用第三预处理网络对关节关键点的相对深度进行预处理后,对应可获得N个关节关键点的单位矢量的一维特征、N个关节的关节长度的一维特征、N个关节关键点的相对深度的一维特征。其中,N由预处理神经相关。
在一些实施例中,所述第一信息包括第一编码信息和第一先验信息,所述第二信息包括第二编码信息和第二先验信息,所述第三信息包括第三编码信息和第三先验信息,如图6所示,步骤430包括:
步骤431,将所述单位矢量输入第一预处理网络得到单位矢量特征,并将第一信息添加至所述单位矢量特征中,得到所述目标单位矢量特征。
在一些实施例中,第一信息包括第一编码信息和第一先验信息。
其中,先验信息为预设维度的语义信息,该预设维度的语义信息由预设的历史训练数据进行学习得到的特征信息,该语义信息用于表征输入数据之间的约束关系,该约束关系用于预测得到输出数据,随着网络的训练不断更新,语义信息能够编码整个数据集的约束关系。
在本实施例中,第一先验信息为针对单位矢量预设置的语义信息,通过第一预处理网络对单位矢量进行全连接处理,得到该第一编码信息。
编码信息可以是与特征相关的可学习的位置矢量编码信息。在一些实施例中,可在自注意力模型中添加编码器,以此来对生成编码信息,并将编码信息与特征进行融合。
可选的,第一先验信息的数量与关节关键点的数量相同,例如,若该关节图像中有n个关节关键点,则有n个第一先验信息。在本申请的实施例中,可将单位矢量特征与第一编码信息进行融合,然后再与n个第一先验信息进行融合,以此得到目标单位矢量特征。可选的,可得到(N+n)个目标单位矢量特征。
步骤432,将所述关节长度输入第二预处理网络得到关节长度特征,并将第二信息添加至所述关节长度特征中,得到所述目标关节长度特征。
在一些实施例中,第二信息包括第二编码信息和第二先验信息。其中,第二先验信息为针对关节长度预设置的语义信息,通过第二预处理网络对关节长度进行全连接处理,得到该第二编码信息。
可选的,第二先验信息的数量也与关节关键点的数量相同,例如,若该关节图像中有n个关节关键点,则有n个第二先验信息。在本申请的实施例中,可将关节长度特征与第二编码信息进行融合,然后再与n个第二先验信息进行融合,以此得到目标关节长度特征。可选的,可得到(N+n)个目标关节长度特征。
步骤433,将所述相对深度输入第三预处理网络得到相对深度特征,并将第三信息添加至所述相对深度特征中,得到所述目标相对深度特征。
在一些实施例中,第三信息包括第三编码信息和第三先验信息。其中,第三先验信息为针对相对深度预设置的语义信息,通过第三预处理网络对相对深度进行全连接处理,得到该第三编码信息。
可选的,第三先验信息的数量也与关节关键点的数量相同,例如,若该关节图像中有n个关节关键点,则有n个第三先验信息。在本申请的实施例中,可将相对深度特征与第三编码信息进行融合,然后再与n个第三先验信息进行融合,以此得到目标相对深度特征。可选的,可得到(N+n)个目标相对深度特征。
在本实施例中,针对单位矢量特征、关节长度特征和相对深度特征分别设置有对应的先验信息,该编码信息由对应预处理网络进行全连接处理得到,即,针对单位矢量特征、关节长度特征和相对深度特征分别添加对应的编码信息和语义信息,得到该目标单位矢量特征、目标关节长度特征和目标相对深度特征。
请继续参阅图5,步骤440,根据所述目标单位矢量特征、所述目标关节长度特征和所述目标相对深度特征,确定所述输入信息。
可选的,输入信息可以是将目标单位矢量特征、目标关节长度特征和目标相对深度特征进行拼接确定。
步骤450,将所述输入信息输入至自注意力模型进行长度值预测,得到所述关节关键点的预测长度值,所述预测长度值是指所述关节关键点的三维坐标与原点之间的长度值。
步骤460,根据所述单位矢量和所述预测长度值,确定所述关节关键点的三维坐标。
其中,步骤450和步骤460的具体描述请参阅步骤140和步骤150,在此不再赘述。
在本申请的实施例中,与上述实施例相比,通过对关节关键点单位矢量、关节关键点的相对深度和关节的关节长度进行预处理,以此能够提高预测长度值的准确性,进而提高确定的关节关键点的准确性。并且,在本申请实施例中,分别将关节关键点单位矢量、关节关键点的相对深度和关节的关节长度与对应的可学习参数进行融合,由于可学习参数能够在关节关键点的三维坐标确定过程中主动学习改变其参数,以此提高预测长度值的准确性。
图7是根据本申请一实施例示出的三维坐标的确定过程的示意图,如图7所示,关节关键点的三维坐标确认过程。
具体过程为:获取关节图像中关节关键点的二维坐标
Figure 575252DEST_PATH_IMAGE052
,然后根据关节图像中关节关键点的二维坐标
Figure 87136DEST_PATH_IMAGE052
和关节图像所来源相机的相机内参矩阵的逆矩阵
Figure 302217DEST_PATH_IMAGE020
计算关节关键点的单位矢量
Figure 63500DEST_PATH_IMAGE053
;然后,利用第一预处理网络
Figure 592701DEST_PATH_IMAGE054
对单位矢量
Figure 21408DEST_PATH_IMAGE053
进行预处理,得到单位矢量
Figure 342144DEST_PATH_IMAGE053
的一维的单位矢量特征
Figure 856302DEST_PATH_IMAGE055
,然后将第一可学习位置矢量
Figure 985932DEST_PATH_IMAGE056
与一维的单位矢量特征
Figure 206829DEST_PATH_IMAGE055
进行相加,再与第一先验信息
Figure 763712DEST_PATH_IMAGE057
进行融合,以此得到目标单位矢量特征
Figure 765166DEST_PATH_IMAGE032
;利用
Figure 432908DEST_PATH_IMAGE058
对关节关键点对应关节的关节长度
Figure 508311DEST_PATH_IMAGE059
进行预处理,得到关节长度
Figure 704937DEST_PATH_IMAGE059
的一维的关节长度特征
Figure 928108DEST_PATH_IMAGE060
,然后,将第二可学习位置矢量
Figure 399541DEST_PATH_IMAGE061
与一维的关节长度特征
Figure 391767DEST_PATH_IMAGE060
进行相加,再与第二先验信息
Figure 490786DEST_PATH_IMAGE062
进行融合,以此得到目标关节长度特征
Figure 935674DEST_PATH_IMAGE063
;利用第三预处理网络
Figure 210797DEST_PATH_IMAGE064
对相对深度值
Figure 526372DEST_PATH_IMAGE023
进行预处理,得到相对深度值
Figure 330380DEST_PATH_IMAGE023
的一维的相对深度值特征
Figure 793722DEST_PATH_IMAGE065
,然后,将第三可学习位置矢量
Figure 544641DEST_PATH_IMAGE066
与一维的相对深度特征
Figure 511460DEST_PATH_IMAGE065
进行相加,再与第三先验信息
Figure 751948DEST_PATH_IMAGE067
进行融合,以此得到目标相对深度特征
Figure 905849DEST_PATH_IMAGE033
将目标单位矢量特征
Figure 257196DEST_PATH_IMAGE032
、目标关节长度特征
Figure 78521DEST_PATH_IMAGE034
和目标相对深度特征
Figure 690244DEST_PATH_IMAGE033
作为第一自注意力模块
Figure 597020DEST_PATH_IMAGE068
的输入信息,第一自注意力模块
Figure 752058DEST_PATH_IMAGE068
进行第一自注意力计算,得到第一特征
Figure 693469DEST_PATH_IMAGE069
;然后,将第一特征
Figure 479022DEST_PATH_IMAGE069
输入至第一多层感知器
Figure 873095DEST_PATH_IMAGE070
中进行有效特征特征提取,得到第一有效特征
Figure 769506DEST_PATH_IMAGE042
;再将第一有效特征
Figure 565424DEST_PATH_IMAGE042
输入至第二自注意力模块
Figure 584196DEST_PATH_IMAGE071
中进行第二自注意力计算,得到第二特征
Figure 934406DEST_PATH_IMAGE072
;继续将第二特征
Figure 165667DEST_PATH_IMAGE072
输入至第二多层感知器
Figure 16424DEST_PATH_IMAGE073
中进行有效特征提取,得到第二有效特征
Figure 206097DEST_PATH_IMAGE074
;最后将第二有效特征
Figure 778023DEST_PATH_IMAGE074
输入至预测模块
Figure 78555DEST_PATH_IMAGE075
中进行长度值预测,得到预测长度值
Figure 786748DEST_PATH_IMAGE076
,再将预测长度值
Figure 147322DEST_PATH_IMAGE076
与关节关键点的单位矢量
Figure 3282DEST_PATH_IMAGE029
逐位相乘,得到关节关键点的三维坐标
Figure 576346DEST_PATH_IMAGE077
以下介绍本申请的装置实施例,可以用于执行本申请上述实施例中的方法。对于本申请装置实施例中未披露的细节,请参照本申请上述方法实施例。
图8是根据本申请一实施例示出的三维坐标的确定装置的框图,如图8所示,该三维坐标的确定装置800包括:获取模块810,用于获取关节的关节图像;单位矢量确定模块820,用于根据关节关键点在所述关节图像中的二维坐标和所述关节图像所来源相机的相机内参,得到所述关节关键点的单位矢量;输入信息确定模块830,用于根据所述单位矢量、所述关节的关节长度和所述关节关键点在所述关节图像的相对深度,确定输入信息;长度值预测模块840,用于将所述输入信息输入至自注意力模型进行长度值预测,得到所述关节关键点的预测长度值,所述预测长度值是指所述关节关键点的三维坐标与原点之间的长度值;三维坐标确定模块850,用于根据所述单位矢量和所述预测长度值,确定所述关节关键点的三维坐标。
在一些实施例中,所述自注意力模型包括第一自注意力模块、第二自注意力模块和预测模块。所述长度值预测模块840包括:第一自注意力计算子模块,用于将所述输入信息输入至所述第一自注意力模块进行第一自注意力计算,得到第一特征;第二自注意力计算子模块,用于将所述第一特征输入至所述第二自注意力模块进行第二自注意力计算,得到第二特征;长度值预测子模块,用于将所述第二特征输入至所述预测模块进行长度值预测,得到所述关节关键点的预测长度值。
在一些实施例中,第二自注意力计算子模块包括:第一加权计算单元,用于确定第一权重,并将所述第一特征与所述第一权重进行加权计算,得到第一自注意力特征;第二加权计算单元,用于确定第二权重,并将所述第一特征与所述第二权重进行加权计算,得到第二自注意力特征;第三加权计算单元,用于确定第三权重,并将所述第一特征与所述第三权重进行加权计算,得到第三自注意力特征;自注意力计算单元,用于将所述第一自注意力特征、所述第二自注意力特征和所述第三自注意力特征输入至所述第二自注意力模块进行第二自注意力计算,得到所述第二特征。
在一些实施例中,所述自注意力模型还包括第一多层感知器和第二多层感知器。所述第二自注意力计算子模块还包括:第一处理单元,用于将所述第一特征输入至所述第一多层感知器进行有效特征提取,得到第一有效特征,并将所述第一有效特征输入至第二自注意力模块进行第二自注意力计算,得到第二特征。
在一些实施例中,所述长度值预测子模块包括:第二处理单元,用于将所述第二特征输入至所述第二多层感知器进行有效特征提取,得到第二有效特征,并将所述第二有效特征输入至预测模块进行长度值预测,得到所述关节关键点的预测长度值。
在一些实施例中,输入信息确定模块830包括:预处理子模块,用于对所述单位矢量进行预处理得到目标单位矢量特征,对所述关节长度进行预处理得到目标关节长度特征,以及对所述相对深度进行预处理得到目标相对深度特征;输入信息确定子模块,用于根据所述目标单位矢量特征、所述目标关节长度特征和所述目标相对深度特征,确定所述输入信息。
在一些实施例中,预处理子模块包括:目标单位矢量特征确定单元,用于将所述单位矢量输入第一预处理网络得到单位矢量特征,并将第一信息添加至所述单位矢量特征中,得到所述目标单位矢量特征;目标关节长度特征确定单元,用于将所述关节长度输入第二预处理网络得到关节长度特征,并将第二信息添加至所述关节长度特征中,得到所述目标关节长度特征;目标相对深度特征确定单元,用于将所述相对深度输入第三预处理网络得到相对深度特征,并将第三信息添加至所述相对深度特征中,得到所述目标相对深度特征。
在一些实施例中,所述第一信息包括第一编码信息和第一先验信息,所述第二信息包括第二编码信息和第二先验信息,所述第三信息包括第三编码信息和第三先验信息。
根据本申请实施例的一个方面,还提供了一种电子设备,如图9所示,该电子设备900包括一个或多个处理器910以及存储器920,存储器920与一个或多个处理器910电连接,一个或多个应用程序被存储于存储器920中,并被配置为由一个或多个处理器910执行,用于实施上述的三维坐标的确定方法。
进一步地,处理器910可以包括一个或者多个处理核。处理器910运行或执行存储在存储器920内的指令、程序、代码集或指令集,以及调用存储在存储器920内的数据。可选地,处理器910可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器910可集成中央处理器 (CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器中,单独通过一块通信芯片进行实现。
根据本申请的一个方面,本申请还提供了一种计算机可读存储介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读存储介质承载计算机可读指令,当该计算机可读存储指令被处理器执行时,实现上述任一实施例中的方法。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

Claims (10)

1.一种三维坐标的确定方法,其特征在于,所述方法包括:
获取关节的关节图像;
根据关节关键点在所述关节图像中的二维坐标和所述关节图像所来源相机的相机内参,得到所述关节关键点的单位矢量;
根据所述单位矢量、所述关节的关节长度和所述关节关键点在所述关节图像的相对深度,确定输入信息;
将所述输入信息输入至自注意力模型进行自注意力计算,得到自注意力特征,并根据所述自注意力特征进行长度值预测,得到所述关节关键点的预测长度值,所述预测长度值是指所述关节关键点的三维坐标与原点之间的长度值;
根据所述单位矢量和所述预测长度值,确定所述关节关键点的三维坐标。
2.根据权利要求1所述的方法,其特征在于,所述自注意力模型包括第一自注意力模块、第二自注意力模块和预测模块;所述将所述输入信息输入至自注意力模型进行长度值预测,得到所述关节关键点的预测长度值,包括:
将所述输入信息输入至所述第一自注意力模块进行第一自注意力计算,得到第一特征;
将所述第一特征输入至所述第二自注意力模块进行第二自注意力计算,得到第二特征;
将所述第二特征输入至所述预测模块进行长度值预测,得到所述关节关键点的预测长度值。
3.根据权利要求2所述的方法,其特征在于,所述将所述第一特征输入至所述第二自注意力模块进行第二自注意力计算,得到第二特征,包括:
确定第一权重,并将所述第一特征与所述第一权重进行加权计算,得到第一自注意力特征;
确定第二权重,并将所述第一特征与所述第二权重进行加权计算,得到第二自注意力特征;
确定第三权重,并将所述第一特征与所述第三权重进行加权计算,得到第三自注意力特征;
将所述第一自注意力特征、所述第二自注意力特征和所述第三自注意力特征输入至所述第二自注意力模块进行第二自注意力计算,得到所述第二特征。
4.根据权利要求2所述的方法,其特征在于,所述自注意力模型还包括第一多层感知器和第二多层感知器;所述将所述第一特征输入至所述第二自注意力模块进行第二自注意力计算,得到第二特征,包括:
将所述第一特征输入至所述第一多层感知器进行有效特征提取,得到第一有效特征,并将所述第一有效特征输入至第二自注意力模块进行第二自注意力计算,得到第二特征;
所述将所述第二特征输入至所述预测模块进行长度值预测,得到所述关节关键点的预测长度值,包括:
将所述第二特征输入至所述第二多层感知器进行有效特征提取,得到第二有效特征,并将所述第二有效特征输入至预测模块进行长度值预测,得到所述关节关键点的预测长度值。
5.根据权利要求1-4任一项所述的方法,其特征在于,根据所述单位矢量、所述关节的关节长度和所述关节关键点在所述关节图像的相对深度,确定输入信息,包括:
对所述单位矢量进行预处理得到目标单位矢量特征,对所述关节长度进行预处理得到目标关节长度特征,以及对所述相对深度进行预处理得到目标相对深度特征;
根据所述目标单位矢量特征、所述目标关节长度特征和所述目标相对深度特征,确定所述输入信息。
6.根据权利要求5所述的方法,其特征在于,所述对所述单位矢量进行预处理得到所述目标单位矢量特征,对所述关节长度进行预处理得到所述目标关节长度特征,以及对所述相对深度进行预处理得到所述目标相对深度特征,包括:
将所述单位矢量输入第一预处理网络得到单位矢量特征,并将第一信息添加至所述单位矢量特征中,得到所述目标单位矢量特征;
将所述关节长度输入第二预处理网络得到关节长度特征,并将第二信息添加至所述关节长度特征中,得到所述目标关节长度特征;
将所述相对深度输入第三预处理网络得到相对深度特征,并将第三信息添加至所述相对深度特征中,得到所述目标相对深度特征。
7.根据权利要求6所述方法,其特征在于,所述第一信息包括第一编码信息和第一先验信息,所述第二信息包括第二编码信息和第二先验信息,所述第三信息包括第三编码信息和第三先验信息。
8.一种三维坐标的确定装置,其特征在于,所述装置包括:
获取模块,用于获取关节的关节图像;
单位矢量确定模块,用于根据关节关键点在所述关节图像中的二维坐标和所述关节图像所来源相机的相机内参,得到所述关节关键点的单位矢量;
输入信息确定模块,用于根据所述单位矢量、所述关节的关节长度和所述关节关键点在所述关节图像的相对深度,确定输入信息;
长度值预测模块,用于将所述输入信息输入至自注意力模型进行自注意力计算,得到自注意力特征,并根据所述自注意力特征进行长度值预测,得到所述关节关键点的预测长度值,所述预测长度值是指所述关节关键点的三维坐标与原点之间的长度值;
三维坐标确定模块,用于根据所述单位矢量和所述预测长度值,确定所述关节关键点的三维坐标。
9.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储器,与所述一个或多个处理器电连接;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个应用程序配置用于执行如权利要求1-7任一项所述的方法。
10.一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行如权利要求1-7任一项所述的方法。
CN202210934386.8A 2022-08-04 2022-08-04 三维坐标的确定方法、装置、电子设备及存储介质 Active CN115018918B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210934386.8A CN115018918B (zh) 2022-08-04 2022-08-04 三维坐标的确定方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210934386.8A CN115018918B (zh) 2022-08-04 2022-08-04 三维坐标的确定方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN115018918A CN115018918A (zh) 2022-09-06
CN115018918B true CN115018918B (zh) 2022-11-04

Family

ID=83066142

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210934386.8A Active CN115018918B (zh) 2022-08-04 2022-08-04 三维坐标的确定方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN115018918B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111931869A (zh) * 2020-09-25 2020-11-13 湖南大学 一种人机自然交互的用户注意力检测方法及系统
CN113470112A (zh) * 2021-06-30 2021-10-01 Oppo广东移动通信有限公司 图像处理方法、装置、存储介质以及终端
WO2021227694A1 (zh) * 2020-05-13 2021-11-18 北京市商汤科技开发有限公司 图像处理方法、装置、电子设备及存储介质
CN114066986A (zh) * 2022-01-11 2022-02-18 南昌虚拟现实研究院股份有限公司 三维坐标的确定方法、装置、电子设备及存储介质
CN114550203A (zh) * 2022-01-11 2022-05-27 南昌虚拟现实研究院股份有限公司 关节关键点的三维坐标的确定方法及其相关设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113043267A (zh) * 2019-12-26 2021-06-29 深圳市优必选科技股份有限公司 机器人控制方法、装置、机器人及计算机可读存储介质
CN111914799A (zh) * 2020-08-17 2020-11-10 杨继猛 基于视频智能分析和三维恢复的鸡啄癖动作检测方法
CN113807323B (zh) * 2021-11-01 2022-12-09 北京大学 基于图像识别的手功能精准评估系统及方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021227694A1 (zh) * 2020-05-13 2021-11-18 北京市商汤科技开发有限公司 图像处理方法、装置、电子设备及存储介质
CN111931869A (zh) * 2020-09-25 2020-11-13 湖南大学 一种人机自然交互的用户注意力检测方法及系统
CN113470112A (zh) * 2021-06-30 2021-10-01 Oppo广东移动通信有限公司 图像处理方法、装置、存储介质以及终端
CN114066986A (zh) * 2022-01-11 2022-02-18 南昌虚拟现实研究院股份有限公司 三维坐标的确定方法、装置、电子设备及存储介质
CN114550203A (zh) * 2022-01-11 2022-05-27 南昌虚拟现实研究院股份有限公司 关节关键点的三维坐标的确定方法及其相关设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"3D interacting hand pose and shape estimation from a single RGB image";Chengying Gao等;《Neurocomputing》;20220214;第474卷;第25-36页 *
"基于矢状面图像的人体姿态检测与运动分析技术研究";林逸非等;《机电产品开发与创新》;20220731;第35卷(第4期);第120-123页 *

Also Published As

Publication number Publication date
CN115018918A (zh) 2022-09-06

Similar Documents

Publication Publication Date Title
Barsoum et al. Hp-gan: Probabilistic 3d human motion prediction via gan
CN111782838B (zh) 图像问答方法、装置、计算机设备和介质
CN111079619B (zh) 用于检测图像中的目标对象的方法和装置
US11755889B2 (en) Method, system and apparatus for pattern recognition
CN112446919B (zh) 物体位姿估计方法、装置、电子设备及计算机存储介质
CN112529015A (zh) 一种基于几何解缠的三维点云处理方法、装置及设备
CN114418030B (zh) 图像分类方法、图像分类模型的训练方法及装置
CN111782840A (zh) 图像问答方法、装置、计算机设备和介质
CN113792871A (zh) 神经网络训练方法、目标识别方法、装置和电子设备
JP2019008571A (ja) 物体認識装置、物体認識方法、プログラム、及び学習済みモデル
CN114641799A (zh) 对象检测设备、方法和系统
CN115861635B (zh) 抗透射畸变的无人机倾斜影像语义信息提取方法及设备
CN115049717B (zh) 一种深度估计方法及装置
CN114792401A (zh) 行为识别模型的训练方法、装置、设备及存储介质
CN115018918B (zh) 三维坐标的确定方法、装置、电子设备及存储介质
CN114565953A (zh) 图像处理方法、装置、电子设备及计算机可读存储介质
CN111914809A (zh) 目标对象定位方法、图像处理方法、装置和计算机设备
CN114066986B (zh) 三维坐标的确定方法、装置、电子设备及存储介质
CN116758212A (zh) 基于自适应去噪算法的3d重建方法、装置、设备及介质
CN115375739A (zh) 车道线生成方法、设备和介质
CN115205654A (zh) 一种新型基于关键点约束的单目视觉3d目标检测方法
CN114387465A (zh) 图像识别方法、装置、电子设备和计算机可读介质
CN116310615A (zh) 图像处理方法、装置、设备及介质
CN114550203A (zh) 关节关键点的三维坐标的确定方法及其相关设备
CN116152334A (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