PoseNet 实时人体姿态估计 iOS 示例应用

2020-02-27 12:49:17 浏览数 (1)

点击我爱计算机视觉标星,更快获取CVML新技术


概述

这是一个移动设备上的摄像头应用,使用姿势预测模型通过摄像头实时检测人体的关键点。人体的关键点是指构建人体骨架所需的点,例如肩膀,肘部,膝盖等。

从上图可以看出,每帧的推断时间仅22~25ms。

  • 姿势预测模型 https://tensorflow.google.cn/lite/models/pose_estimation/overview

应用程序会提取和模型要求的输入图像长宽比相一致的最大图像。由于被去除的区域已被遮挡,所以您可以在显示屏上查看被提取的区域。当推理总得分高于0.5时,将呈现结果。

摄像头抓拍的照片在使用后会立即丢弃,不会进行保存。

所用模型

姿势预测模型是一种视觉模型,通过关键人体关节位置的估算来预测图像或视频中人的姿势。

模型结构

预处理

在预处理过程中,摄像头输入的图像将被转换,以满足模型对输入的要求:首先,将原始图像裁剪为符合模型输入尺寸 (宽高比) 的图像,然后对裁剪后图像进行大小调整,并转换为模型可接受的数据类型。

推理

将预处理的数据分配给输入张量并运行模型。将输出数据分配给输出张量作为结果。

后处理

在后处理中,它将计算关键点和要显示的线的位置以及总信任值得分。总信任值分数是所有关键点信任值 (信任值取值范围在 0.0 至 1.0,1.0 为最高信任值) 的平均值。

根据热力图张量 (heat tensor) 和偏移张量计算关键点的坐标。这些坐标基于模型输入大小,这意味着您应变换每个坐标以匹配关键点的显示视图大小。由于此应用程序的显示视图大小与模型输入大小不同,因此它将转换点的坐标。使用变换后的点,可以通过将点连接在相邻关节之间来绘制人的骨骼。

要求

  • Xcode
  • 有效的 Apple 开发人员 ID
  • 带摄像头的物理 iOS 设备
  • iOS 12.0 或更高版本
  • Xcode 命令行工具(如需安装,请运行 xcode-select --install )
  • CocoaPods(如需安装,请运行 sudo gem install cocoapods )

构建并运行

  • 将 GitHub 仓库中的 TensorFlow 示例克隆到您的计算机以获取演示应用。 git clone https://github.com/tensorflow/example
  • 安装 pod 来生成工作空间文件: cd examples/lite/examples/posenet/ios && pod install 注意:如果您之前已安装 pod,该命令却不起作用,请尝试 pod update 。在此步骤结束后,您应该有一个名为 PoseNet.xcworkspace 的目录。
  • 使用以下命令在 Xcode 中打开项目: open PoseNet.xcworkspace 这将启动 Xcode 并打开 PoseNet 项目。
  • 在菜单栏中,选择 Product → Destination 然后选择您的物理设备。
  • 在菜单栏中,选择 Product → Run 在您的设备上安装该应用程序。
  • GitHub https://github.com/tensorflow/examples/tree/master/lite/examples/posenet/ios?linkId=80292261

姿态估计交流群

关注最新最前沿的人体姿态估计与跟踪技术,扫码添加CV君拉你入群,(如已为CV君其他账号好友请直接私信)

(请务必注明:姿态)

0 人点赞