CN117727073A - 模型训练方法及相关设备 - Google Patents
模型训练方法及相关设备 Download PDFInfo
- Publication number
- CN117727073A CN117727073A CN202410172215.5A CN202410172215A CN117727073A CN 117727073 A CN117727073 A CN 117727073A CN 202410172215 A CN202410172215 A CN 202410172215A CN 117727073 A CN117727073 A CN 117727073A
- Authority
- CN
- China
- Prior art keywords
- human body
- loss value
- posture
- sample image
- model
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 69
- 238000012549 training Methods 0.000 title claims abstract description 57
- 230000037237 body shape Effects 0.000 claims abstract description 54
- 230000015654 memory Effects 0.000 claims description 36
- 238000004590 computer program Methods 0.000 claims description 12
- 238000005452 bending Methods 0.000 claims description 8
- 230000002159 abnormal effect Effects 0.000 claims description 4
- 230000000875 corresponding effect Effects 0.000 description 95
- 238000012545 processing Methods 0.000 description 25
- 239000010410 layer Substances 0.000 description 19
- 230000006870 function Effects 0.000 description 18
- 238000004891 communication Methods 0.000 description 17
- 238000007726 management method Methods 0.000 description 13
- 210000002414 leg Anatomy 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 238000010295 mobile communication Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 230000005236 sound signal Effects 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 210000000988 bone and bone Anatomy 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000000994 depressogenic effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 210000003127 knee Anatomy 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 210000003414 extremity Anatomy 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Landscapes
- Image Analysis (AREA)
Abstract
本申请公开了模型训练方法及相关设备,该方法包括:获取第一样本图像,第一样本图像包含第一人体;确定第一样本图像对应的第一人体形状姿态信息和第一样本图像对应的第一人体深度图,第一人体形状姿态信息包括第一人体的各个关节点对应的估算距离,估算距离为估算得到的相机到关节点的距离,第一人体深度图包括第一人体上的像素点对应的深度数据,深度数据为相机到第一人体上的点的距离;基于第一人体形状姿态信息和第一人体深度图,确定第一目标损失值;基于第一目标损失值进行模型训练,得到第一姿态模型,第一姿态模型用于确定人体姿态。采用该方法能够准确地估算人体姿态。
Description
技术领域
本申请涉及人工智能领域,尤其涉及模型训练方法及相关设备。
背景技术
单目相机只有一个摄像头,通过单目相机进行拍摄,会将三维空间信息存储为二维图像,相当于某个场景在图像上的一个投影。从单目相机(如手机相机)的图像中去估计人体的三维姿态是一个很具备挑战性的问题。
虽然可以通过三维人体估计算法得到人体姿态,但是在估算过程中容易出现人体朝相机倾斜以及腿部弯曲的结果,因此通过现有方法估算得到的人体姿态不准确。
发明内容
本申请提供了一种模型训练方法及相关设备,能够准确地估算人体姿态。
第一方面,本申请的一些实施例提供了一种模型训练方法。该模型训练方法可以包括:获取第一样本图像,第一样本图像包含第一人体;确定第一样本图像对应的第一人体形状姿态信息和第一样本图像对应的第一人体深度图,第一人体形状姿态信息包括第一人体的各个关节点对应的估算距离,估算距离为估算得到的相机到关节点的距离,第一人体深度图包括第一人体上的像素点对应的深度数据,深度数据为相机到第一人体上的点的距离;基于第一人体形状姿态信息和第一人体深度图,确定第一目标损失值;基于第一目标损失值进行模型训练,得到第一姿态模型,第一姿态模型用于确定人体姿态。
通过上述方式,基于第一人体形状姿态信息和第一人体深度图,确定第一目标损失值,也就是利用深度信息进行约束,使得引入深度信息进行约束进行训练后得到的模型,能够准确地估算人体姿态。
在一种可能的实现中,基于第一人体形状姿态信息和第一人体深度图,确定第一目标损失值,包括:基于第一人体形状姿态信息和第一人体深度图,确定第一损失值,第一损失值与人体姿态的倾斜程度成正比;基于第一损失值,确定第一目标损失值。
通过上述方式,第一目标损失值用于对模型进行训练,而该第一目标损失值是基于第一损失值确定出来的,所以第一损失值也参与该模型训练的过程,该第一损失值又是基于深度信息得到的,从而实现在训练模型时引入了深度信息进行约束。
在一种可能的实现中,基于第一人体形状姿态信息和第一人体深度图,确定第一损失值,包括:基于第一人体形状姿态信息和第一人体深度图确定第一关节点对应的第一深度数据和第一关节点对应的第一估计距离,以及第二关节点对应的第二深度数据和第二关节点对应的第二估计距离,第一关节点和第二关节点为第一人体腿部上相邻的两个关节点;基于第一深度数据、第一估计距离、第二深度数据以及第二估计距离,确定第一损失值。
通过上述方式,通过第一人体腿部上相邻的两个关节点对应的深度数据和估计距离得到第一损失值,使得训练得到的模型可以解决腿部弯曲的问题。
在一种可能的实现中,基于第一深度数据、第一估计距离、第二深度数据以及第二估计距离,确定第一损失值,包括:基于第一深度数据、第一估计距离、第二深度数据、第二估计距离以及预设的损失权重,确定第一损失值。
通过上述方式,引入权重确定第一损失值,可以使得训练得到的模型可以更好地解决腿部弯曲的问题。
在一种可能的实现中,基于第一损失值,确定第一目标损失值,包括:基于第一损失值、第二损失值、第三损失值、第四损失值、第五损失值,确定第一目标损失值;其中,第二损失值为关键点约束对应的损失值、第三损失值为人体姿态先验对应的损失值、第四损失值为人体形态约束对应的损失值、第五损失值为异常弯曲约束对应的损失值。
通过上述方式,在训练模型时,引入多种约束对模型进行训练,使得训练得到的第一姿态模型可以准确地估算人体姿态。
在一种可能的实现中,确定第一样本图像对应的第一人体形状姿态信息和第一样本图像对应的第一人体深度图,包括:将第一样本图像输入人体姿态模型,得到第一样本图像对应的第一人体形状姿态信息;将第一样本图像输入图像深度估计模型,得到第一样本图像对应的第一人体深度图。
通过上述方式,通过人体姿态模型和图像深度估计模型,可以准确地得到第一样本图像对应的第一人体形状姿态信息和第一人体深度图。
在一种可能的实现中,基于第一目标损失值进行模型训练,得到第一姿态模型之后,该方法还包括:确定第二样本图像对应的第二人体形状姿态信息和第二样本图像对应的第二人体深度图,第二样本图像包含第二人体,第二人体形状姿态信息包括第二人体的各个关节点对应的估算距离,第二人体深度图包括第二人体上的像素点对应的深度数据,深度数据为相机到第二人体上的点的距离;基于第二人体形状姿态信息和第二人体深度图,确定第二目标损失值;基于第二目标损失值对第一姿态模型进行训练,得到第二姿态模型,第二姿态模型用于确定人体姿态。
通过上述方式,在通过第一样本图像训练完成后,再使用第二样本图像继续对第一姿态模型进行训练,得到第二姿态模型,通过多次迭代训练,使得到的姿态模型可以更加准确地估算人体姿态。
在一种可能的实现中,第一人体和第二人体为从不同方向拍摄同一人体得到的人体。
通过上述方式,通过不同方向拍摄的同一人体的图像对模型进行训练,使得到的姿态模型可以更加准确地估算人体姿态。
第二方面,本申请提供了一种电子设备,包括一个或多个处理器和一个或多个存储器。该一个或多个存储器与一个或多个处理器耦合,一个或多个存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当一个或多个处理器执行计算机指令时,使得电子设备执行上述第一方面任一项可能的实现方式中的模型训练方法。
第三方面,本申请提供了一种模型训练装置,该装置可以是电子设备,也可以是电子设备中的装置,或者是能够和电子设备匹配使用的装置;其中,该模型训练装置还可以是芯片系统,该模型训练装置可执行第一方面中电子设备所执行的方法。该模型训练装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的单元。该单元可以是软件和/或硬件。该模型训练装置执行的操作及有益效果可以参见上述第一方面所述的方法以及有益效果,重复之处不再赘述。
第四方面,本申请提供了一种芯片,该芯片包括处理器和接口,处理器和接口耦合;接口用于接收或输出信号,处理器用于执行代码指令,以执行上述第一方面任一项可能的实现方式中的模型训练方法。
第五方面,本申请提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序/指令,当计算机程序产品在计算机上运行时,使得计算机执行上述第一方面任一项可能的实现方式中的模型训练方法。
第六方面,本申请提供了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行上述第一方面任一项可能的实现方式中的模型训练方法。
附图说明
图1为本申请实施例提供的一种电子设备的硬件结构示意图;
图2为本申请实施例提供的一种电子设备的软件结构示意图;
图3为本申请实施例提供的一种模型训练方法的流程示意图;
图4A为本申请实施例提供的一种第一样本图像的示意图;
图4B为本申请实施例提供的另一种模型训练方法的流程示意图;
图4C为本申请实施例提供的一种第一人体中的关节点的示意图;
图4D为本申请实施例提供的一种拍摄第一人体的场景示意图;
图4E为本申请实施例提供的一种第一样本图像和第二样本图像的示意图;
图5是本申请实施例提供的一种模型训练装置的结构示意图;
图6是本申请实施例提供的一种芯片的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
应当理解,本申请的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。
为了便于理解本申请实施例提供的方案,下面对本申请实施例涉及的相关概念进行介绍:
蒙皮多人线性(Skinned Multi-Person Linear,SMPL)模型是一种用于三维人体模型的参数化方法,它不仅考虑了骨架点,还包括了蒙皮信息,即皮肤覆盖的表面。SMPL模型的目标是在保持简单性的同时,能够准确地表示人体的形状和姿态。它的全称是“Skinned Multi-Person Linear”,其中"skinned"意味着模型中包含了蒙皮,而"linear"则是因为它是基于线性系统的变形来实现的。
SMPL模型包含两种类型的参数:
形状参数():这些参数有10个维度,用来描述人体的基本形状特征,如身高、体型等。
姿态参数():一组姿态参数有24 × 3 = 72个维度,用来描述人体在特定时间点的动作姿态,包括各个关节点的旋转角度。
视频推断人体姿态和形状估计(Video Inference for Human Body Pose andShape Estimation,VIBE):VIBE模型是一个基于视频的人体3D形状和姿态估计模型,它利用了视频中的时序信息来提高估计的准确性。模型的核心在于其能够从视频帧序列中提取出人体的3D姿态和形状信息。与仅从单张图片进行估计的方法相比,VIBE模型通过考虑视频中的连续帧之间的时序关系,能够获得更加准确的估计结果。具体来说,VIBE模型包含以下几个关键部分:
时序编码器:这部分输入视频帧序列,并输出SMPL人体模型参数。时序编码器的设计使得模型能够捕捉到视频中的时间连续性,从而更好地理解人体的动态变化。
样本集比较:在背景建模方面,VIBE模型为每个背景点存储了一个样本集。新的像素值会与这个样本集进行比较,以此来判断像素点是否属于背景。这种方法有效地处理了动态背景和前景的区分问题。
对抗训练:VIBE模型使用了生成对抗网络(GAN)的概念,其中包括一个Discriminator。这种设计不需要2D-3D数据对,而是通过对抗训练的方式来提高模型的性能。此外,VIBE模型还引入了GRU(门控循环单元)来处理时序数据,并且增加了一个motiondiscriminator来进一步提升模型对于运动信息的捕捉能力。
VIBE模型的输出主要可以包括如下的几个部分:
顶点信息(verts):人体模型的3D顶点坐标,用于描述人体的形状和姿态。
相机参数(cam):描述了如何将3D模型投影到2D图像平面上,包括了相机的位置和方向等信息。
关节点3D位置(joints3d):人体关键关节点的3D位置,如肩膀、肘部、手腕等,它们对于理解人体的动态非常关键。
综上所示,VIBE模型通过结合时序编码、样本集比较和对抗训练等技术,实现了对人体3D姿态和形状的高精度估计,特别是在处理视频数据时,能够有效利用时序信息,提高了估计结果的准确性。
从单张图像出发迈向零样本度量三维预测模型(Towards Zero-shot Metric 3DPrediction from A Single Image,Metric3D):Metric3D是从单张图像中恢复出绝对尺度的深度信息,并重建带有绝对尺度的三维场景。由于单张图像无法确定物体的真实大小和距离。所以Metric3D采取了如下步骤,以确定物体的真实大小和距离:
识别尺度歧义的来源:焦距是影响深度估计尺度变化的主要因素。不同的相机参数,如像素大小、焦距和传感器尺寸,都会对深度估计产生影响。其中,焦距的变化会导致最显著的尺度歧义。
统一相机空间变换:为了解决尺度歧义,Metric3D提出了一种统一相机空间变换的方法。通过对输入图像或地面真相(GT)进行相应的补偿,模型能够学习到具有尺度表达能力的深度预测。
训练zero-shot transferable模型:Metric3D的目标是训练一个可以从单张图像恢复metric 3D信息的模型,该模型能够在不同相机设置下进行零样本泛化。
综上所示,Metric3D通过上述步骤能够有效地从单张图像中恢复出绝对尺度的深度信息,并重建出带有绝对尺度的三维场景。
基于数据驱动的单张图像中三维手部姿态和物体姿态同时估计(A Data-drivenApproach to Simultaneously Estimating 3D Hand Pose and Object Pose from aSingle Image,SMPLIF)算法:该算法首先使用一个2D关键点检测网络来预测图像中的人体2D关键点,然后利用统计人体模型(SMPL)拟合这些2D关键点。通过最小化3D模型投影的2D关键点与网络预测出的关键点之间的距离来实现拟合。这种方法可以有效地抑制身体部位互穿的现象,即防止生成不合理的3D姿势。
下面对电子设备100的硬件结构进行介绍。请参阅图1,图1是本申请实施例提供的电子设备100的硬件结构示意图。
电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本发明实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。处理器110调用存储器中存储的指令或数据,使电子设备100执行以下方法实施例中电子设备所执行的拍摄方法。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电在其他一些实施例中,电源管理模块141也可以设置于处理器110中。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如Wi-Fi网络),蓝牙(bluetooth,BT),BLE广播,全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。其中,显示屏194可以是外折折叠屏,即向外折叠起来的显示屏。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。ISP用于处理摄像头193反馈的数据。摄像头193用于捕获静态图像或视频。摄像头193可以包括前置摄像头和后置摄像头,前置摄像头位于屏幕的显示区域,后置摄像头位于屏幕的背部区域。数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。
NPU为神经网络(neural-network ,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如闪存器件等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。耳机接口170D用于连接有线耳机。压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。陀螺仪传感器180B可以用于确定电子设备100的运动姿态。气压传感器180C用于测量气压。磁传感器180D包括霍尔传感器。加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。距离传感器180F,用于测量距离。接近光传感器180G可以包括例如发光二极管(LED)和光检测器。环境光传感器180L用于感知环境光亮度。指纹传感器180H用于采集指纹。温度传感器180J用于检测温度。触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。骨传导传感器180M可以获取振动信号。按键190包括开机键,音量键等。马达191可以产生振动提示。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。SIM卡接口195用于连接SIM卡。
图2为本申请实施例提供的一种电子设备100的软件结构示意图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。如图2所示,应用程序层可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,用户终端振动,指示灯闪烁等。
安卓运行时包括核心库和虚拟机。安卓运行时负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如: MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
下面对本申请实施例提供的模型训练方法进一步进行介绍:
请参见图3,图3是本申请实施例提供的一种模型训练方法的流程示意图,如图3所示,该模型训练方法包括如下步骤301~步骤304。图3所示的方法执行主体可以为上述提及的电子设备。或者,图3所示的方法执行主体可以为电子设备中的芯片,本申请实施例不做限定。为了方便描述,图3以电子设备为方法的执行主体为例进行说明。其中:
301、电子设备获取第一样本图像,第一样本图像包含第一人体。
其中,第一样本图像中包括一个人体。该第一样本图像可以是电子设备的相机拍摄得到的图像,也可以是从网络上下载获得的图像,本申请对第一样本图像的来源不做限制。第一人体为一个完整的整个人体,也就是说该第一人体需要包括人体的躯干、四肢、头部等,该第一人体可以为人体的正面,也可以为人体的侧面,还可以为人体的背面等。
示例性的,如图4A所示,图4A中401标记的图像为第一样本图像,402标记的人体为第一人体。
302、电子设备确定第一样本图像对应的第一人体形状姿态信息和第一样本图像对应的第一人体深度图,第一人体形状姿态信息包括第一人体的各个关节点对应的估算距离,估算距离为估算得到的相机到关节点的距离,第一人体深度图包括第一人体上的像素点对应的深度数据,深度数据为相机到第一人体上的点的距离。
其中,该第一样本图像对应的第一人体形状姿态信息包括第一人体的各个关节点对应的估算距离,该估算距离是通过用于表征人体形状的形状参数,和用于表征人体姿态的姿态参数确定的。
在一种可能的实施例中,该第一人体形状姿态信息为第一人体上各个关节点对应的坐标值,该坐标值为三维坐标值,该坐标值包括关节点在x轴上对应的值、在y轴上对应的值以及在z轴上对应的值,其中在z轴上对应的值为该关节点对应的估算距离。例如,关节点A对应的坐标值为(x1,y1,z1),该z1为该关节点A对应的估算距离。
其中,该深度数据可以是一个深度图,该深度图是一种灰度图像,其中每个像素点包含了该点距离相机的距离信息。在深度图中,不同的灰度值代表了不同的距离级别,通常情况下,越亮(接近白色)的区域表示距离相机越近,而越暗(接近黑色)的区域则表示距离相机越远。
通常来说,该深度数据比估算距离更为准确,也就是该深度数据对应的值更接近于关节点到相机的实际距离。
在一种可能的实施例中,电子设备确定第一样本图像对应的第一人体形状姿态信息和第一样本图像对应的第一人体深度图,包括:电子设备将第一样本图像输入人体姿态模型,得到第一样本图像对应的第一人体形状姿态信息;电子设备将第一样本图像输入图像深度估计模型,得到第一样本图像对应的第一人体深度图。
其中,人体姿态模型可以为VIBE模型,VIBE模型可以对人体3D姿态和形状的高精度估计,具体请参见上述中对VIBE模型的介绍,本申请在此不做赘述。除此之外,该人体姿态模型还可以为姿态上下文3D(Pose Contextual 3D,PoseC3D)模型,该PoseC3D模型通过对2D骨架数据的深入分析和处理,可以有效地进行动作识别。或者,为其他模型,本申请对此不做限制。该第一人体形状姿态信息可以为VIBE模型输出的顶点信息,该顶点信息可以参见上述对VIBE模型的介绍。
其中,图像深度估计模型可以为Metric3D模型,该Metric3D模型可以从单张图像中恢复出绝对尺度的深度信息,并重建带有绝对尺度的三维场景,具体请参见上述中对Metric3D模型的介绍,本申请在此不做赘述。除此之外,该图像深度估计模型还可以为密集预测变压器(Dense Prediction Transformer,DPT)模型,DPT模型通过深度学习视角变换来进行深度估计,能够从单一图像中预测出精确的深度图。或者,为其他模型(例如,最小化和密集监督(Minimal and Dense Supervision,MiDaS)模型等),本申请对此不做限制。示例性的,该实施的流程示意图可以如图4B所示。
303、电子设备基于第一人体形状姿态信息和第一人体深度图,确定第一目标损失值。
其中,第一目标损失值用于对模型进行训练,该第一目标损失值可以是基于多个损失值确定的。
在一种可能的实施例中,电子设备基于第一人体形状姿态信息和第一人体深度图,确定第一目标损失值,包括:电子设备基于第一人体形状姿态信息和第一人体深度图,确定第一损失值,第一损失值与人体姿态的倾斜程度成正比;基于第一损失值,确定第一目标损失值。
其中,该具体第一损失值用于对3D关节点进行约束,该第一损失值用于优化人体腿部前倾和弯曲。具体地,电子设备基于第一人体形状姿态信息、第一人体深度图以及第一损失函数,确定第一损失值。
在一种可能的实施例中,电子设备基于第一人体形状姿态信息和第一人体深度图,确定第一损失值,包括:电子设备基于第一人体形状姿态信息和第一人体深度图确定第一关节点对应的第一深度数据和第一关节点对应的第一估计距离,以及第二关节点对应的第二深度数据和第二关节点对应的第二估计距离,第一关节点和第二关节点为第一人体腿部上相邻的两个关节点;电子设备基于第一深度数据、第一估计距离、第二深度数据以及第二估计距离,确定第一损失值。
其中,第一关节点和第二关节点为位于第一人体中同一条腿上相邻的两个关节点。第一关节点对应的第一深度数据为该第一关节点所在点在深度图中对应的距离数据,该第二关节点对应的第二深度数据同理。
如图4C所示,图4C中每一个圆点代表一个关节点,数字1标记的圆点表示关节点1,数字2标记的圆点表示关节点2,以此类推。图4C中,关节点1-关节点8都是腿部上的关节点,关节点1、关节点3、关节点5以及关节点7为右腿上的关节点,而关节点2、关节点4、关节点6以及关节点8为左腿上的关节点。该第一关节点和第二关节点可以为:关节点1和关节点3,或者关节点3和关节点5,或者为关节点2和关节点4。
在一种可能的实施例中,用d表示深度数据,z表示估计距离,如图4D所示,在拍摄时d和z表示的物理含义。
在一种可能的实施例中,该第一深度数据、第一估计距离、第二深度数据、第二估计距离以及第一损失值满足如下公式一:
公式一
其中,i为第一关节点,j为第二关节点,为第一深度数据,/>为第二深度数据,/>为第一估计距离,/>为第二估计距离,/>为第一损失值。
在一种可能的实施例中,电子设备基于第一深度数据、第一估计距离、第二深度数据以及第二估计距离,确定第一损失值,包括:电子设备基于第一深度数据、第一估计距离、第二深度数据、第二估计距离以及预设的损失权重,确定第一损失值。
其中,该第一深度数据、第一估计距离、第二深度数据、第二估计距离、第一损失值以及预设的损失权重满足如下公式二:
公式二
其中,i为第一关节点,j为第二关节点,为第一深度数据,/>为第二深度数据,/>为第一估计距离,/>为第二估计距离,/>为第一损失值,/>为预设的损失权重。
在一种可能的实施例中,电子设备基于第一人体形状姿态信息和第一人体深度图确定第一关节点对应的第一深度数据和第一关节点对应的第一估计距离,以及第二关节点对应的第二深度数据和第二关节点对应的第二估计距离,具体为:第二基于第一人体形状姿态信息确定第一关节点对应的第一估计数据和第二关节点对应的第二估计数据;电子设备基于第一人体形状姿态信息,在第一人体深度图中确定出第一关节点和第二关节点;电子设备确定第一人体深度图中第一关节点对应的第一深度数据和第二关节点对应的第二深度数据。
在一种可能的实施例中,电子设备基于第一损失值,确定第一目标损失值,包括:电子设备基于第一损失值、第二损失值、第三损失值、第四损失值、第五损失值,确定第一目标损失值;其中,第二损失值为关键点约束对应的损失值、第三损失值为人体姿态先验对应的损失值、第四损失值为人体形态约束对应的损失值、第五损失值为异常弯曲约束对应的损失值。
其中,该第一目标损失值可以为第一损失值、第二损失值、第三损失值、第四损失值、第五损失值之和,也就是该第一目标损失值=第一损失值+第二损失值+第三损失值+第四损失值+第五损失值。
可选的,该第一目标损失值除了为第一损失值、第二损失值、第三损失值、第四损失值、第五损失值之和以外,还可以为其他形式,例如为第一损失值、第二损失值、第三损失值、第四损失值、第五损失值之积等,本申请对此不做限制。
可选的,该第一目标损失值还可以基于除了上述以外更多或者更少的损失值确定的。例如,该第一目标损失值可以是基于第一损失值、第二损失值、第三损失值确定的,或者该第一目标损失值可以是基于第一损失值、第三损失值、第四损失值、第五损失值,确实该第一目标损失值可以是基于第一损失值、第二损失值、第三损失值、第四损失值、第五损失值以及第六损失值确定的,该第六损失值为相机参数损失值等。本申请对此不做限制。
为了更好的理解上述的第一目标损失值,下面分别对第二损失值、第三损失值、第四损失值、第五损失值进行说明。
该第二损失值为关键点约束对应的损失值,该关键点通常表示图像中特定的物体部位,如人脸关键点、人体骨骼关键点等。关键点用于定位和识别图像中的特定特征。该第二损失值越小,则表示3D人体模型SMPL与2D关键点之间的差异越小。
该第三损失值用于约束模型预测的姿态与先验知识之间的差异,确保预测出的人体姿态在统计学上是合理的。其中,第三损失值越大,则表示预测的姿态越不符合先验知识,第三损失值越小,则表示预测的姿态越符合先验知识。
第四损失值用于通过将统计人体模型SMPL拟合到2D关节来估计3D人体的pose和shape。
第五损失值用于确保人体姿态的自然性和合理性。例如,人体的腿部膝盖无法往后凹,当预测出来的人体姿态的腿部膝盖往后凹时,该第五损失值会极大。
304、电子设备基于第一目标损失值进行模型训练,得到第一姿态模型,第一姿态模型用于确定人体姿态。
其中,该第一姿态模型可以为SMPL模型,该SMPL模型可参见上述中的介绍,本申请在此不做赘述。该第一姿态模型得到的人体姿态相较于上述人体姿态模型得到的人体姿态更合理准确,该第一姿态模型得到的人体姿态为去倾斜的人体姿态,也就是说,该第一姿态模型可以用于优化人体姿态模型得到的人体姿态。
在一种可能的实施例中,该第一姿态模型用于得到精确的相机参数。该精确的相机参数用于在后续对第一姿态模型的训练中确定更准确地相机参数约束。
在一种可能的实施例中,电子设备基于第一目标损失值进行模型训练,得到第一姿态模型之后,方法还包括:电子设备确定第二样本图像对应的第二人体形状姿态信息和第二样本图像对应的第二人体深度图,第二样本图像包含第二人体,第二人体形状姿态信息包括第二人体的各个关节点对应的估算距离,第二人体深度图包括第二人体上的像素点对应的深度数据,深度数据为相机到第二人体上的点的距离;电子设备基于第二人体形状姿态信息和第二人体深度图,确定第二目标损失值;电子设备基于第二目标损失值对第一姿态模型进行训练,得到第二姿态模型,第二姿态模型用于确定人体姿态。
其中,电子设备确定第二样本图像对应的第二人体形状姿态信息和第二样本图像对应的第二人体深度图的方式,与电子设备确定第一样本图像对应的第一人体形状姿态信息和第一样本图像对应的第一人体深度图的方式相同。具体可参见上述步骤302中的描述。本申请在此不做赘述。
同理,该第二目标损失值与上述第一目标损失值的确定方式也相同,具体可参见上述步骤303中的描述,本申请在此不做赘述。
为了使得得到的模型可以更好的确定人体姿态,在一种可能的实施例中,第一人体和第二人体为从不同方向拍摄同一人体得到的人体。如图4E所示,403标记的图像为第一样本图像,404标记的图像为第二样本图像。
需要说明的是,在得到第二姿态模型之后,还可以再对第二姿态模型再进行训练。
在一种可能的实施例中,电子设备获取样本图像集,该样本图像集包括至少三个第三样本图像,该至少三个第三样本图像包括从至少三个不同方向拍摄同一人体得到的人体;电子设备确定第三样本图像对应的第三人体形状姿态信息和第三样本图像对应的第三人体深度图,第三人体形状姿态信息包括第三人体的各个关节点对应的估算距离,估算距离为估算得到的相机到关节点的距离,第三人体深度图包括第三人体上的像素点对应的深度数据,深度数据为相机到第三人体上的点的距离;基于第三人体形状姿态信息和第三人体深度图,确定第三目标损失值;基于第三目标损失值进行模型训练,得到第三姿态模型,第三姿态模型用于确定人体姿态。
也就是说,在训练姿态模型时,需要通过包括多个方向拍摄的样本图像进行训练,使得训练得到的模型在应用时,可以对各个方向的人体都准确地预测人体姿态。
请参见图5,图5为本申请实施例提供的一种模型训练装置500的结构示意图。图5所示的模型训练装置可以是电子设备,也可以是电子设备中的装置,或者是能够和电子设备匹配使用的装置。图5所示的模型训练装置可以包括获取单元501和处理单元502。其中:
获取单元501,用于获取第一样本图像,第一样本图像包含第一人体;
处理单元502,用于确定第一样本图像对应的第一人体形状姿态信息和第一样本图像对应的第一人体深度图,第一人体形状姿态信息包括第一人体的各个关节点对应的估算距离,估算距离为估算得到的相机到关节点的距离,第一人体深度图包括第一人体上的像素点对应的深度数据,深度数据为相机到第一人体上的点的距离;
处理单元502,还用于基于第一人体形状姿态信息和第一人体深度图,确定第一目标损失值;
处理单元502,还用于基于第一目标损失值进行模型训练,得到第一姿态模型,第一姿态模型用于确定人体姿态。
在一种可能的实现方式中,处理单元502,还用于基于第一人体形状姿态信息和第一人体深度图,确定第一损失值,第一损失值与人体姿态的倾斜程度成正比;基于第一损失值,确定第一目标损失值。
在一种可能的实现方式中,处理单元502,还用于基于第一人体形状姿态信息和第一人体深度图确定第一关节点对应的第一深度数据和第一关节点对应的第一估计距离,以及第二关节点对应的第二深度数据和第二关节点对应的第二估计距离,第一关节点和第二关节点为第一人体腿部上相邻的两个关节点;基于第一深度数据、第一估计距离、第二深度数据以及第二估计距离,确定第一损失值。
在一种可能的实现方式中,处理单元502,还用于基于第一深度数据、第一估计距离、第二深度数据、第二估计距离以及预设的损失权重,确定第一损失值。
在一种可能的实现方式中,处理单元502,还用于基于第一损失值、第二损失值、第三损失值、第四损失值、第五损失值,确定第一目标损失值;其中,第二损失值为关键点约束对应的损失值、第三损失值为人体姿态先验对应的损失值、第四损失值为人体形态约束对应的损失值、第五损失值为异常弯曲约束对应的损失值。
在一种可能的实现方式中,处理单元502,还用于将第一样本图像输入人体姿态模型,得到第一样本图像对应的第一人体形状姿态信息;将第一样本图像输入图像深度估计模型,得到第一样本图像对应的第一人体深度图。
在一种可能的实现方式中,处理单元502,还用于确定第二样本图像对应的第二人体形状姿态信息和第二样本图像对应的第二人体深度图,第二样本图像包含第二人体,第二人体形状姿态信息包括第二人体的各个关节点对应的估算距离,第二人体深度图包括第二人体上的像素点对应的深度数据,深度数据为相机到第二人体上的点的距离;基于第二人体形状姿态信息和第二人体深度图,确定第二目标损失值;基于第二目标损失值对第一姿态模型进行训练,得到第二姿态模型,第二姿态模型用于确定人体姿态。
对于模型训练装置可以是芯片或芯片系统的情况,可参见图6所示的芯片的结构示意图。图6所示的芯片600包括处理器601、接口602。可选的,还可包括存储器603。其中,处理器601的数量可以是一个或多个,接口602的数量可以是多个。
对于芯片用于实现本申请实施例中电子设备的情况:
所述接口602,用于接收或输出信号;
所述处理器601,用于执行电子设备的数据处理操作。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
可以理解的是,本申请实施例中的一些可选的特征,在某些场景下,可以不依赖于其他特征,比如其当前所基于的方案,而独立实施,解决相应的技术问题,达到相应的效果,也可以在某些场景下,依据需求与其他特征进行结合。相应地,本申请实施例中给出的模型训练装置也可以相应的实现这些特征或功能,在此不予赘述。
应理解,本申请实施例中的处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(digitalsignal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field programmable gate array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
可以理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(directrambus RAM,DR RAM)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
本申请还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,该计算机程序包括程序指令,当该程序指令在电子设备上运行时,实现上述任一方法实施例的功能。
本申请还提供了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机实现上述任一方法实施例的功能。
上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,高密度数字视频光盘(digital video disc,DVD))、或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (12)
1.一种模型训练方法,其特征在于,所述方法包括:
获取第一样本图像,所述第一样本图像包含第一人体;
确定所述第一样本图像对应的第一人体形状姿态信息和所述第一样本图像对应的第一人体深度图,所述第一人体形状姿态信息包括所述第一人体的各个关节点对应的估算距离,所述估算距离为估算得到的相机到所述关节点的距离,所述第一人体深度图包括所述第一人体上的像素点对应的深度数据,所述深度数据为相机到所述第一人体上的点的距离;
基于所述第一人体形状姿态信息和所述第一人体深度图,确定第一目标损失值;
基于所述第一目标损失值进行模型训练,得到第一姿态模型,所述第一姿态模型用于确定人体姿态。
2.根据权利要求1所述的方法,其特征在于,所述基于所述第一人体形状姿态信息和所述第一人体深度图,确定第一目标损失值,包括:
基于所述第一人体形状姿态信息和所述第一人体深度图,确定第一损失值,所述第一损失值与人体姿态的倾斜程度成正比;
基于所述第一损失值,确定第一目标损失值。
3.根据权利要求2所述的方法,其特征在于,所述基于所述第一人体形状姿态信息和所述第一人体深度图,确定第一损失值,包括:
基于所述第一人体形状姿态信息和所述第一人体深度图确定第一关节点对应的第一深度数据和所述第一关节点对应的第一估计距离,以及第二关节点对应的第二深度数据和所述第二关节点对应的第二估计距离,所述第一关节点和所述第二关节点为所述第一人体腿部上相邻的两个关节点;
基于所述第一深度数据、所述第一估计距离、所述第二深度数据以及所述第二估计距离,确定第一损失值。
4.根据权利要求3所述的方法,其特征在于,所述基于所述第一深度数据、所述第一估计距离、所述第二深度数据以及所述第二估计距离,确定第一损失值,包括:
基于所述第一深度数据、所述第一估计距离、所述第二深度数据、所述第二估计距离以及预设的损失权重,确定第一损失值。
5.根据权利要求2-4中任意一项所述的方法,其特征在于,所述基于所述第一损失值,确定第一目标损失值,包括:
基于所述第一损失值、第二损失值、第三损失值、第四损失值、第五损失值,确定第一目标损失值;
其中,所述第二损失值为关键点约束对应的损失值、所述第三损失值为人体姿态先验对应的损失值、所述第四损失值为人体形态约束对应的损失值、所述第五损失值为异常弯曲约束对应的损失值。
6.根据权利要求1-4任意一项所述的方法,其特征在于,所述确定所述第一样本图像对应的第一人体形状姿态信息和所述第一样本图像对应的第一人体深度图,包括:
将所述第一样本图像输入人体姿态模型,得到所述第一样本图像对应的第一人体形状姿态信息;
将所述第一样本图像输入图像深度估计模型,得到第一样本图像对应的第一人体深度图。
7.根据权利要求1-4中任意一项所述的方法,其特征在于,所述基于所述第一目标损失值进行模型训练,得到第一姿态模型之后,方法还包括:
确定第二样本图像对应的第二人体形状姿态信息和所述第二样本图像对应的第二人体深度图,所述第二样本图像包含第二人体,所述第二人体形状姿态信息包括所述第二人体的各个关节点对应的估算距离,所述第二人体深度图包括所述第二人体上的像素点对应的深度数据,所述深度数据为相机到所述第二人体上的点的距离;
基于所述第二人体形状姿态信息和所述第二人体深度图,确定第二目标损失值;
基于所述第二目标损失值对所述第一姿态模型进行训练,得到第二姿态模型,所述第二姿态模型用于确定人体姿态。
8.根据权利要求7所述的方法,其特征在于,所述第一人体和所述第二人体为从不同方向拍摄同一人体得到的人体。
9.一种电子设备,包括一个或多个存储器、一个或多个处理器,其特征在于,所述存储器用于存储计算机程序;所述处理器用于调用所述计算机程序,使得所述电子设备执行权利要求1-8中任一项所述的方法。
10.一种芯片系统,应用于电子设备,其特征在于,所述芯片系统包括至少一个处理器以及接口,所述接口用于接收指令,并传输至所述至少一个处理器;所述至少一个处理器运行所述指令使得所述电子设备执行如权利要求1-8中任意一项所述的方法。
11.一种计算机可读存储介质,其上存储有计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现如权利要求1-8中任意一项所述的方法的步骤。
12.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现如权利要求1-8中任意一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410172215.5A CN117727073B (zh) | 2024-02-07 | 2024-02-07 | 模型训练方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410172215.5A CN117727073B (zh) | 2024-02-07 | 2024-02-07 | 模型训练方法及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117727073A true CN117727073A (zh) | 2024-03-19 |
CN117727073B CN117727073B (zh) | 2024-07-09 |
Family
ID=90209211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410172215.5A Active CN117727073B (zh) | 2024-02-07 | 2024-02-07 | 模型训练方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117727073B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110246181A (zh) * | 2019-05-24 | 2019-09-17 | 华中科技大学 | 基于锚点的姿态估计模型训练方法、姿态估计方法和系统 |
US20200167941A1 (en) * | 2018-11-27 | 2020-05-28 | GM Global Technology Operations LLC | Systems and methods for enhanced distance estimation by a mono-camera using radar and motion data |
-
2024
- 2024-02-07 CN CN202410172215.5A patent/CN117727073B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200167941A1 (en) * | 2018-11-27 | 2020-05-28 | GM Global Technology Operations LLC | Systems and methods for enhanced distance estimation by a mono-camera using radar and motion data |
CN110246181A (zh) * | 2019-05-24 | 2019-09-17 | 华中科技大学 | 基于锚点的姿态估计模型训练方法、姿态估计方法和系统 |
Non-Patent Citations (2)
Title |
---|
YANG J ET AL: "Hand Pose Estimation from Depth Image Based on CPM", 2022 IEEE 10TH JOINT INTERNATIONAL INFORMATION TECHNOLOGY AND ARTIFICIAL INTELLIGENCE CONFERENCE (ITAIC), vol. 10, 31 December 2022 (2022-12-31), pages 896 - 905, XP034160424, DOI: 10.1109/ITAIC54216.2022.9836639 * |
朱建宝 等: "基于OpenPose人体姿态识别的变电站危险行为检测", 自动化与仪表, no. 2, 24 February 2020 (2020-02-24), pages 53 - 57 * |
Also Published As
Publication number | Publication date |
---|---|
CN117727073B (zh) | 2024-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111738122B (zh) | 图像处理的方法及相关装置 | |
US12020472B2 (en) | Image processing method and image processing apparatus | |
CN111400605A (zh) | 基于眼球追踪的推荐方法及装置 | |
CN111882642B (zh) | 三维模型的纹理填充方法及装置 | |
CN111553846A (zh) | 超分辨率处理方法及装置 | |
CN112991494A (zh) | 图像生成方法、装置、计算机设备及计算机可读存储介质 | |
CN114140365A (zh) | 基于事件帧的特征点匹配方法及电子设备 | |
CN116048244B (zh) | 一种注视点估计方法及相关设备 | |
CN115619858A (zh) | 一种物体重建方法以及相关设备 | |
CN113538321B (zh) | 基于视觉的体积测量方法及终端设备 | |
CN110956571B (zh) | 基于slam进行虚实融合的方法及电子设备 | |
US20230401897A1 (en) | Method for preventing hand gesture misrecognition and electronic device | |
CN114827442B (zh) | 生成图像的方法和电子设备 | |
CN116433830A (zh) | 一种三维地图的创建方法及电子设备 | |
WO2023216957A1 (zh) | 一种目标定位方法、系统和电子设备 | |
CN117727073B (zh) | 模型训练方法及相关设备 | |
CN114022570B (zh) | 相机间外参的标定方法及电子设备 | |
CN117292033A (zh) | 一种渲染方法以及装置 | |
CN115880347A (zh) | 图像处理方法、电子设备、存储介质及程序产品 | |
CN114970576A (zh) | 识别码的识别方法、相关电子设备及计算机可读存储介质 | |
CN117974711B (zh) | 视频插帧方法及相关设备 | |
CN117710786B (zh) | 图像处理方法、图像处理模型的优化方法及相关设备 | |
CN117764853B (zh) | 人脸图像增强方法和电子设备 | |
CN116688494B (zh) | 生成游戏预测帧的方法和电子设备 | |
CN117635466B (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 |