System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于计算机视觉和机器学习领域,具体的说是涉及一种基于tensorflow.js的posenet模型实时人体姿态识别方法及识别系统。
技术介绍
1、人体姿态识别技术是一种通过分析图像或视频中的人体姿势,以获取关节角度、身体部位和运动轨迹等信息的技术。这种技术在许多领域具有广泛的应用,包括健康监测、体育训练、虚拟现实和安防等。在tensorflow.js出现之前,人体姿态识别主要依赖于传统的计算机视觉技术,如openpose、posenet等,这些技术往往需要复杂的模型和大量的计算资源,限制了其在移动端和web应用中的应用。
2、传统的人体姿态识别算法通常需要庞大的计算资源,限制了在资源受限的环境中的应用,例如移动设备和web浏览器。传统方法中使用的模型较为复杂,需要大量的参数和层次结构,使得模型的训练和部署都变得复杂。部分传统算法在实时性上表现不佳,导致在一些需要快速响应的应用场景中无法满足需求。
3、tensorflow.js相对于传统技术更加轻量级,可以在浏览器中直接运行,降低了对于大量计算资源的依赖。这使得人体姿态识别技术可以更容易地集成到web应用中,同时也为在移动设备上运行提供了可能。此外,tensorflow.js支持模型的即时训练和即时部署,使得本技术可以更加灵活地适应不同的场景和需求。
4、此外,目前社会上基于tensorflow.js的人体姿态识别系统存在一些缺陷。由于人体姿态识别是一项复杂的任务,系统在处理复杂场景、多人姿态、遮挡等情况下的准确性和稳定性仍有待提升。
5、综上所述,在前端与姿态识别领域,研究并开发一款在线的,具备准确性、稳定性、高性能、安全性和隐私保护性的新型人体姿态识别系统是必要的。
技术实现思路
1、为了解决上述技术问题,本专利技术提供了一种基于tensorflow.js的人体姿态识别方法和识别系统,该人体姿态识别方法能够在任何支持现代web标准的设备上高效运行,实时计算人体姿态识别数据,在web设备上实时准确地绘制人体姿态识别结果。
2、为了达到上述目的,本专利技术是通过以下技术方案实现的:
3、本专利技术是一种基于tensorflow.js的人体姿态识别技术,包括以下步骤:
4、本专利技术是一种基于tensorflow.js的人体姿态识别方法,该人体姿态识别方法具体包括以下步骤:
5、步骤1、通过深度卷积神经网络模型处理输入的图像和视频数据,识别图像和视频中的人体关键点;
6、步骤2、采用了多尺度特征提取技术,在不同分辨率下捕捉到人体特征,增强深度卷积神经网络模型对于人体姿态变化的敏感度;
7、步骤3、关键点定位:利用前向传播算法、posenet模型预测图像和视频中每个像素点属于特定关键点的概率以及关键点之间的空间关系,生成概率图;
8、步骤4、利用非极大值抑制(nms)算法从步骤3生成的概率图中提取出最高概率的关键点位置,确保识别结果的准确性和稳定性,并通过解析关键点之间的空间关系,构建出人体的姿态结构;
9、步骤5、在步骤4构建完整的姿态结构后,通过canvas2d与webgl在浏览器页面上实时反馈识别结果。
10、本专利技术的进一步改进在于步骤1中,通过深度卷积神经网络模型处理输入的图像和视频数据具体包括以下步骤:
11、步骤11、准备输入的图像和视频,对输入的图像和视频调整大小以匹配深度卷积神经网络模型的输入层的输入要求,对原始图像和视频进行归一化处理,将原始图像和视频的的像素值缩放到0-1之间;
12、步骤12、通过深度卷积神经网络模型的多层网络自动学习步骤11输入图像和视频的特征;
13、步骤13、将步骤12学到的特征转化为具体的关键点位置,并通过优化过程提高预测的准确性。
14、本专利技术的进一步改进在于所述步骤12具体为:
15、步骤121、在卷积层中,深度卷积神经网络模型通过一系列卷积层来提取图像和视频特征,每个卷积层使用多个滤波器即卷积核来捕捉图像和视频的局部特征,具体为:
16、
17、其中,f(x,y)是处理后的图像和视频在位置(x,y)的像素值,i(x+i,y+j)表示原始图像和视频在位置x+i,y+j的像素值,k(i,j)是一个滤波器,它在(i,j)处的值代表了该像素点在处理中的权重,a和b是定义滤波器大小和中心的参数;
18、步骤122、调用激活函数relu引入非线性,使得深度卷积神经网络模型学习复杂的特征表示,其中relu定义为:
19、f(x)=max(0,x);
20、步骤123、在连续的卷积和激活层之后,经过池化层降低图像和视频的特征维度,减少计算量,同时保留重要的特征信息。
21、本专利技术的进一步改进在于所述步骤13具体包括以下步骤:
22、步骤131、经过一系列卷积和池化层之后,深度卷积神经网络模型通过全连接层将学到的特征映射到关键点的坐标;
23、步骤132、采用均方误差(mse)作为损失函数,衡量预测关键点与真实标注之间的差异;
24、步骤133、使用梯度下降作为优化算法,通过反向传播算法更新深度卷积神经网络模型的权重,最小化损失函数,提高关键点检测的准确性。
25、本专利技术的进一步改进在于所述步骤2中具体包括以下步骤:
26、步骤21、调用深度卷积神经网络模型对不同分辨率尺寸的图像和视频按照粗糙到细腻进行特征提取,覆盖必要的细节信息;
27、步骤22、细微特征的捕捉与合并:通过深度卷积神经网络模型理解人体的整体结构同时关注关节的细节特征,具体为:假设有n个尺度,每个尺度的特征提取表示为一个函数fi(i),其中i是输入图像,i是尺度指标,通过加权求和合并特征,表示为:
28、
29、其中,wi是第i尺度特征的权重。
30、本专利技术的进一步改进在于:步骤3关键点定位具体包括以下步骤:
31、步骤31、前向传播算法将输入图像和视频通过预训练的深度卷积神经网络传递,深度卷积神经网络逐层提取图像和视频的特征,直至最后一层生成关于人体关键点位置的预测输出,设(x)为输入图像,f1为第l层的激活函数,w1和b1分别为第l层的权重和偏置,则第l层的输出h(l)表示为:
32、h(l)=f(l)(w(l)h(l-1)+b(l))
33、其中,l大于等于0,h0=x是输入图像;
34、步骤32、在posenet中,前向传播算法的最终输出是关于图像和视频中每个像素点属于特定关键点的概率,概率通过深度卷积神经网络模型的最本文档来自技高网...
【技术保护点】
1.一种基于TensorFlow.js的人体姿态识别方法,其特征在于:所述人体姿态识别方法具体包括以下步骤:
2.根据权利要求1所述的一种基于TensorFlow.js的人体姿态识别方法,其特征在于:步骤1中,通过深度卷积神经网络模型处理输入的图像和视频数据具体包括以下步骤:
3.据权利要求2所述的一种基于TensorFlow.js的人体姿态识别方法,其特征在于:所述步骤12具体为:
4.据权利要求3所述的一种基于TensorFlow.js的人体姿态识别方法,其特征在于:所述步骤13具体包括以下步骤:
5.根据权利要求1所述的一种基于TensorFlow.js的人体姿态识别方法,其特征在于:所述步骤2中具体包括以下步骤:
6.根据权利要求1所述的一种基于TensorFlow.js的人体姿态识别方法,其特征在于:步骤3关键点定位具体包括以下步骤:
7.根据权利要求1所述的一种基于TensorFlow.js的人体姿态识别方法,其特征在于:步骤4构建人体姿态的具体包括以下步骤:
8.根据权利要求1-7任
9.一种电子设备,包括存储器、处理器及存储在存储器上并在处理器上运行的计算机程序,其特征在于:所述处理器执行所述计算机程序时实现权利要求1至8中任一项所述方法的步骤。
10.一种计算机机程序被处理器运行时执行所述权利要求1至8中任一项所述的方法。
...【技术特征摘要】
1.一种基于tensorflow.js的人体姿态识别方法,其特征在于:所述人体姿态识别方法具体包括以下步骤:
2.根据权利要求1所述的一种基于tensorflow.js的人体姿态识别方法,其特征在于:步骤1中,通过深度卷积神经网络模型处理输入的图像和视频数据具体包括以下步骤:
3.据权利要求2所述的一种基于tensorflow.js的人体姿态识别方法,其特征在于:所述步骤12具体为:
4.据权利要求3所述的一种基于tensorflow.js的人体姿态识别方法,其特征在于:所述步骤13具体包括以下步骤:
5.根据权利要求1所述的一种基于tensorflow.js的人体姿态识别方法,其特征在于:所述步骤2中具体包括以下步骤:
6.根据权利要求1...
【专利技术属性】
技术研发人员:谭耀,余西亚,高书贤,丁鸿飞,
申请(专利权)人:南京邮电大学通达学院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。