人体姿态识别(毕业设计+代码)

简介: 人体姿态识别(毕业设计+代码)

模型效果


从下图可以清楚的看到,提出的模型可以对人眼以及嘴巴进行描述。

最终的是对每个关节点进行了划分和表示。

https://ucc.alicdn.com/images/user-upload-01/6de18dbd91464369938018efbf223185.png


前言


从视频中进行人体姿势估计在各种应用中都扮演着关键角色,例如量化身体锻炼、手语识别和全身手势控制。例如,它可以成为瑜伽、舞蹈和健身应用的基础。它还可以在增强现实中将数字内容和信息覆盖在物理世界之上。


模型介绍


提出的人体识别模型是一种高保真度的身体姿势跟踪机器学习解决方案,可以从RGB视频帧中推断出整个身体的33个3D标记和背景分割掩码,利用先前BlazePose研究,该研究还为ML Kit Pose Detection API提供支持。值得注意的是,目前最先进的方法主要依赖于强大的桌面环境进行推断,而我们的方法可以在大多数现代手机、桌面/笔记本电脑上实现实时性能,甚至在Python和Web上也可以使用可谓是功能十分强大!


算法介绍


这个解决方案利用了一种两步探测器-跟踪器机器学习流程,决方案中已经被证明是有效的。使用探测器,该流程首先定位帧内的人/姿势感兴趣区域(ROI)。然后,跟踪器使用ROI裁剪帧作为输入,在ROI内预测姿势标记和分割掩码。请注意,对于视频用例,只有在需要时才会调用探测器,即在第一帧和跟踪器无法在上一帧中识别身体姿势存在时。对于其他帧,该流程只需从上一帧的姿势标记中派生ROI。


模型


人物/姿势检测模型(BlazePose检测器)

该检测器受我们自己的轻量级BlazeFace模型的启发,该模型用作MediaPipe面部检测的代理人物检测器。它明确预测另外两个虚拟关键点,以牢固描述人体的中心、旋转和比例,形成一个圆。灵感来自于达·芬奇的《维特鲁威人》,我们预测一个人的臀部中点、围绕整个人的圆的半径以及连接肩膀和臀部中点的线的倾斜角度。

1060b9095c2c0f30b942d0d169e62570_e49577f3022d48ce8ba096400dbc24c0.png


算法代码


核心代码部分 顺便看下效果

https://ucc.alicdn.com/images/user-upload-01/0efaf82f2a64422b8e315e18803fc759.png


支持的配置选项:

static_image_mode(静态图像模式)

model_complexity(模型复杂度)

smooth_landmarks(平滑标记点)

enable_segmentation(启用分割)

smooth_segmentation(平滑分割)

min_detection_confidence(最小检测置信度)

min_tracking_confidence(最小跟踪置信度)

with mp_pose.Pose(
#全部代码----->q1309399183<---------
    static_image_mode=True,
    model_complexity=2,
    enable_segmentation=True,
    min_detection_confidence=0.5) as pose:
  for idx, file in enumerate(IMAGE_FILES):
    image = cv2.imread(file)
    image_height, image_width, _ = image.shape
    # Convert the BGR image to RGB before processing.
    results = pose.process(cv2.cvtColor(image, cv2.COLOR_BGR2RGB))
    if not results.pose_landmarks:
      continue
    print(
        f'Nose coordinates: ('
        f'{results.pose_landmarks.landmark[mp_pose.PoseLandmark.NOSE].x * image_width}, '
        f'{results.pose_landmarks.landmark[mp_pose.PoseLandmark.NOSE].y * image_height})'
    )


算法结论和效果展示


该流程是作为一个e图实现的,它使用了姿势标记模块中的姿势标记子图,并使用专用的姿势渲染器子图进行渲染。姿势标记子图在内部使用了姿势检测模块中的姿势检测子图。

https://ucc.alicdn.com/images/user-upload-01/a4c37b04e02f4554bf749f23c0949af3.png


代码部分可私信交流



相关文章
|
机器学习/深度学习 算法 Python
【DYConv】CVPR2020 | 即插即用的动态卷积模块助力你涨点
【DYConv】CVPR2020 | 即插即用的动态卷积模块助力你涨点
2596 1
【DYConv】CVPR2020 | 即插即用的动态卷积模块助力你涨点
|
10月前
|
编解码 算法
信号分析中的经验模态分解和希尔伯特变换
信号分析中的经验模态分解(EMD) 和希尔伯特变换(HT) 是处理非线性、非平稳信号的强大工具。它们共同构成了希尔伯特-黄变换(Hilbert-Huang Transform, HHT) 的核心。
|
机器学习/深度学习 监控 人机交互
深度学习之视频中的姿态跟踪
基于深度学习的视频姿态跟踪是一项用于从视频序列中持续检测和跟踪人体姿态的技术。它能够识别人体的2D或3D关键点,并在时间维度上进行跟踪,主要应用于人机交互、体育分析、动作识别和虚拟现实等领域。
625 3
|
存储 Kubernetes C++
Docker、containerd、CRI-O 和 runc 之间的区别
通过理解这些组件的角色和功能,可以更好地选择和配置容器环境,以满足特定的需求和应用场景。
1208 25
|
人工智能 小程序 API
【一步步开发AI运动APP】九、自定义姿态动作识别检测——之关键点追踪
本文介绍了【一步步开发AI运动APP】系列中的关键点追踪技术。此前分享的系列博文助力开发者打造了多种AI健身场景的小程序,而新系列将聚焦性能更优的AI运动APP开发。文章重点讲解了“关键点位变化追踪”能力,适用于动态运动(如跳跃)分析,弥补了静态姿态检测的不足。通过`pose-calc`插件,开发者可设置关键点(如鼻子)、追踪方向(X或Y轴)及变化幅度。示例代码展示了如何在`uni-app`框架中使用`createPointTracker`实现关键点追踪,并结合人体识别结果完成动态分析。具体实现可参考文档与Demo示例。
|
算法 物联网 Swift
Qwen3 X ModelScope工具链: 飞速训练 + 全面评测
Qwen于近日发布了Qwen3系列模型,包含了各个不同规格的Dense模型和MoE模型。开源版本中,Dense模型基本沿用了之前的模型结构,差别之处在于对于Q和K两个tensor增加了RMSNorm;MoE模型去掉了公共Expert,其他结构基本与前一致。在模型大小上,涵盖了从0.6B到32B(Dense)和235B(MoE)不同的尺寸。
2011 15
|
人工智能 小程序 前端开发
【一步步开发AI运动小程序】十八、如何识别用户上传图片中的人体、运动、动作、姿态?
【云智AI运动识别小程序插件】为小程序提供人体、运动及姿态检测的AI能力,本地引擎支持10余种运动,无需后台服务,具备快速、低成本等优势。本文介绍如何通过Canvas方案读取用户上传图片的像素数据,实现人体检测与姿态分析功能,代码简单高效,适合快速集成。更多内容欢迎交流!
|
人工智能 小程序 开发者
【一步步开发AI运动APP】六、运动计时计数能调用
本文章介绍了如何通过【一步步开发AI运动APP】系列博文,利用uniAPP插件开发高性能的AI运动应用。文中详细说明了创建运动分析器、进行运动分析、监听计数变化以及停止/重置分析等功能实现步骤。插件内置多种常见运动(如跳绳、俯卧撑等),支持自定义扩展,满足健身、体测等场景需求。示例代码展示了人体检测、运动计时计数及UI更新的完整流程,帮助开发者快速上手并深耕AI运动领域。
|
人工智能 小程序 搜索推荐
uni app下开发AI运动小程序解决方案
本文介绍了在小程序中实现AI运动识别的解决方案。该方案依托于UNI平台,通过高效便捷的插件形式,实现包括相机抽帧控制、人体识别、姿态识别等在内的多项功能,无需依赖后台服务器,大幅提高识别效率和用户体验。方案内置多种运动模式,支持自定义扩展,适用于AI健身、云上赛事、AI体测等多场景,适合新开发和存量改造项目。
|
人工智能 小程序 API
【一步步开发AI运动小程序】十七、如何识别用户上传视频中的人体、运动、动作、姿态?
【云智AI运动识别小程序插件】提供人体、运动、姿态检测的AI能力,支持本地原生识别,无需后台服务,具有速度快、体验好、易集成等优点。本文介绍如何使用该插件实现用户上传视频的运动识别,包括视频解码抽帧和人体识别的实现方法。

热门文章

最新文章