OAK入门教程:人体姿势跟踪检测实战

前言

Hello,大家好,这里是OAK中国,我是助手君。

   本期内容我们将介绍使用depthai实现人体姿势跟踪,这个示例是由geaxgx实现。示例代码在GitHub上可以找到。超级容易上手,快来试试吧!

分析项目

此项目检测人体姿态并画出身体特征点。

   在全身特征点下可以画出3D骨架模型。

   通过测量手臂角度来读取信号显示字母。

模型介绍

此示例使用Google推出的MediaPipe中的Pose解决方案。

   MediaPipe Pose是一种用于高保真身体姿势跟踪的ML解决方案,从RGB视频帧中推断出整个身体上的33个3D特征点(或25个上身特征点)。

   MediaPipe Pose利用两步走策略-检测器加跟踪器,管道首先使用人体检测器在帧中定位人体位置(ROI),跟踪器随后使用ROI裁剪帧作为输入来预测ROI中的姿势特征点坐标。

人体姿态检测模型

此模型明确预测了两个虚拟关键点,这些关键点将人体的中心,旋转和缩放牢固地描述为一个圆圈。受莱昂纳多的维特鲁威人的启发,我们预测了人的臀部的中点,外接整个人的圆的半径以及连接肩部和臀部中点的直线的倾斜角度。
在这里插入图片描述

人体姿态特征点模型

MediaPipe Pose中的地标模型有两个版本:可以预测33个姿势特征点坐标的全身模型,以及仅预测前25个姿势特征点的上身模型。后者主要用于下半身不可见的场景。
在这里插入图片描述

模型剖析

我们使Netron工具查看模型结构。

  1. pose_detection.blob 输入: 输出:
  2. pose_landmark_full_body.blob 输入: 输出:
  3. pose_landmark_upper_body.blob 输入: 输出:

转换模型

我们手中的神经网络模型千奇百怪,但我们depthai需要使用blob文件,不能直接使用各大神经网络框架生成的模型。因此可以先使用OpenVINO将各种模型转换为IR,再将IR转换为blob文件。

  1. 首先下载并安装OpenVINO
  2. 然后使用OpenVINO的模型下载脚本工具下载模型。

        例如:
python ~/intel/openvino/deployment_tools/open_model_zoo/tools/downloader/downloader.py --name face-detection-retail-0004 --output_dir ~/open_model_zoo_downloads/

a. 此时得到的模型OpenVINO IR,也就是.bin和.xml文件。我们还需要将IR转换为DepthAI所需要的blob文件。

   将OpenVINO IR编译为blob文件:

export MYRIAD_COMPILE=$(find /opt/intel/ -iname myriad_compile)
$MYRIAD_COMPILE -m sbd_mask.xml -ip U8 -VPU_MYRIAD_PLATFORM VPU_MYRIAD_2480 -VPU_NUMBER_OF_SHAVES 4 -VPU_NUMBER_OF_CMX_SLICES 4

注:使用模型转换工具需要安装openvino,安装时要注意DepthAI对OpenVINO版本有要求。 详情请参照openvino安装。

   另外:在此项目中作者贴心的为我们提供了模型转换脚本。

   tflite模型转IR-convert_models.sh

cd resources/models
./convert_models.sh

IR转blob-gen_blob_shave.sh。

# Example: to generate blobs for 6 shaves
./gen_blob_shave.sh -m pd -n 6        # will generate pose_detection_sh6.blob
./gen_blob_shave.sh -m lm_full -n 6   # will generate pose_landmark_full_body_sh6.blob
./gen_blob_shave.sh -m lm_up -n 6     # will generate pose_landmark_upper_body_sh6.blob

最终效果

在这里插入图片描述

参考资料

免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空