实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

735次阅读
没有评论

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

实时高精度的单阶段人体姿态估计算法 RTMO 正式开源!RTMO 结合了坐标回归策略与 YOLOX 检测框架,克服了现有的单阶段人体姿态估计模型精度与速度难以兼得的难题。RTMO 具有两个突出的优势:

  • 在密集的多人场景中,速度和精度均领先。相比传统的二阶段模型如 RTMPose,RTMO 的速度受画面中的人数的影响可以忽略不计。同时它在多个多人密集场景的数据集上获得了最高精度,如在 CrowdPose 数据集上取得83.8 AP,较以往最佳模型提升 5.3 AP。

  • 模型简单易部署。作为端到端的单阶段模型,RTMO 可以一条命令完成推理和部署,无需额外的人体检测器网络,大大简化了使用流程。

项目主页:

https://github.com/open-mmlab/mmpose/tree/main/projects/rtmo

(文末点击阅读原文可直达)

论文链接:

https://arxiv.org/abs/2312.07526

效果展示

让我们一起先看看 RTMO 在多人场景中的检测效果(latency 为 NVIDIA 3090 TensorRT-FP16 测试结果)

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

图1 推理效果图1

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

图2 推理效果图2

实时姿态估计模型的性能对比

现有的实时姿态估计模型主要包括二阶段 top-down 架构的轻量级模型(例如 RTMPose)以及基于 YOLO 架构的单阶段模型(例如 YOLO-Pose, YOLOv8-Pose)。我们在 CPU 和 GPU 上分别比较了它们的速度和精度。

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

图3 CPU 上实时姿态估计模型的速度-精度对比图

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

图4 GPU 上实时姿态估计模型的速度-精度对比图

相较其他实时单阶段模型,RTMO 在性能上全面领先,达到了和二阶段模型 RTMPose 差不多的精度。而相比二阶段模型,RTMO 在画面中人数较多时有速度优势。在相同精度要求下,当画面中人数超过 4(cpu)/2(gpu) 时,RTMO 的推理速度就已经超越了 RTMPose。

多人场景下的领先性能

多人加拥挤场景一直是姿态估计领域的难题。RTMO 在训练过程中使用了 MixUp 数据增强,模拟了拥挤的场景;在正负样本分配的过程中考虑了姿态估计的准确度,减少了关键点错位造成的误差;再加上 MMPose 多数据集训练的加持。因此,RTMO 在多人拥挤场景下依旧有很高的精度。在针对这类场景的 CrowdPose 和 OCHuman 两个数据集上,RTMO 都取得了当前最高的精度。

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

图5 CrowdPose 测试集 SOTA 模型精度

在 CrowdPose 上,RTMO-l 取得了 83.8 的 AP,相比之前的最佳模型有 5.3 AP 的提升。谁能想到这是一个能跑 100+ FPS 的轻量级模型呢?

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

图6 OCHuman 数据集 SOTA 模型精度

在 OCHuman 上,RTMO 同样取得了当前最高的精度(不使用标注检测框的情况下)。

便捷的推理接口

得益于 MMPose 框架便捷的推理接口,只需要一行代码,我们就可以调用 RTMO 模型进行推理。

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

图7 一行代码用 RTMO 完成多人姿态估计

在 OpenXLab 应用平台上,RTMPose 应用也已集成 RTMO。无需本地安装,在浏览器中就能在线使用 RTMO 处理图像、视频

RTMPose 应用链接:

https://openxlab.org.cn/apps/detail/mmpose/RTMPose

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

图8 在线试用 RTMO

多平台部署支持

对于需要在业务侧部署模型的小伙伴,RTMO 也带来了福音。

不同于二阶段姿态估计模型,RTMO 无需使用人体检测器预先获取人体检测框,因此它的部署相比 RTMPose 要更加简单。RTMO 项目主页介绍了如何使用 MMDeploy 部署 RTMO 模型,无论是用 ONNX 还是 TensorRT 后端都可以一键搞定。

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

图9 RTMO 部署教程

此外,我们还提供了开箱即用的轻量推理库 rtmlib (https://github.com/Tau-J/rtmlib):

  • 无需安装 mmcv,mmengine,mmpose 等一系列训练库,有 opencv 就能推理

  • 超级友好简洁的推理和可视化接口

  • 自动下载和缓存 onnx 模型

  • 支持 RTMPose 全系列官方及衍生模型:RTMPose,DWPose,RTMO,RTMW etc.

代码样例:

import cv2
from rtmlib import Body, draw_skeleton
device = 'cpu'  # cpu, cudabackend = 'onnxruntime'  # opencv, onnxruntime, openvinoimg = cv2.imread('./demo.jpg')
openpose_skeleton = False  # True for openpose-style, False for mmpose-style
body = Body(    pose='rtmo',    to_openpose=openpose_skeleton,    mode='balanced',  # balanced, performance, lightweight    backend=backend,    device=device)
keypoints, scores = body(img)
# visualize
# if you want to use black background instead of original image,# img_show = np.zeros(img_show.shape, dtype=np.uint8)
img_show = draw_skeleton(img_show, keypoints, scores, kpt_thr=0.5)
cv2.imshow('img', img_show)cv2.waitKey()

One More Thing

RTMPose 家族的全身姿态估计模型 RTMW 也进行了全面更新,基于 DWPose 蒸馏方案(同样已集成在 MMPose 中)进行了加强,相较于 alpha 版本中 RTMW-x 取得 70.2 mAP 精度,蒸馏得到的 RTMW-l 用 60% 的计算量取得了 70.1 mAP。

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

图10 DWPose (上) 与 RTMW (下) 效果对比动图

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

图11  DWPose (上) 与 RTMW (下) 效果对比静图

总结

RTMO 是基于 MMPose 的单阶段实时人体姿态估计模型,它结合了坐标回归与 YOLOX 检测框架,在多人场景下实现了领先的速度与精度。RTMO 在 CrowdPose 数据集上首次达到了 80+ 的 AP,是多人拥挤场景当前效果最好的实时模型。作为单阶段模型,RTMO 推理部署简单方便。我们还提供了 Python 推理接口、多平台部署方案,开发者可以快速上手使用。诚挚欢迎对人体姿态估计感兴趣的小伙伴来试用 RTMO,提出宝贵意见!

项目主页:

https://github.com/open-mmlab/mmpose/tree/main/projects/rtmo

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

(欢迎扫码加入 MMPose 交流群获取更多资讯)


换个框架,LLaVA-7B 竟能媲美 13B?

2023-12-28

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

书生·浦语大模型实战营——两周带你玩转微调部署评测全链路

2023-12-25

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

2023年度大模型榜单即将发布!我们诚邀你的加入

2023-12-22

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

实时推理+SOTA精度!RTMO引领MMPose姿态估计新高度

 

Read More 

正文完
可以使用微信扫码关注公众号(ID:xzluomor)
post-qrcode
 
评论(没有评论)
Generated by Feedzy