性能之王rtmw-l-256x192:COCO-WholeBody数据集上74.3%身体AP的背后技术
【免费下载链接】rtmw-l-256x192项目地址: https://ai.gitcode.com/hf_mirrors/akore/rtmw-l-256x192
rtmw-l-256x192是一款基于OpenMMLab MMPose移植的实时多人全身姿态估计算法,能够同时预测133个关键点,涵盖身体、面部、手部和足部,在COCO-WholeBody数据集上实现了74.3%的身体AP(平均精度),为计算机视觉领域的姿态估计任务提供了强大的解决方案。
🌟 突破性性能表现
rtmw-l-256x192在COCO-WholeBody v1.0验证集上展现了卓越的性能,其身体AP达到74.3%,身体AR(平均召回率)为80.7%。与同系列模型相比,该模型在256×192的输入分辨率下实现了精度与速度的完美平衡:
| 模型 | 输入尺寸 | 身体AP | 身体AR | 足部AP | 面部AP | 手部AP | 整体AP |
|---|---|---|---|---|---|---|---|
| rtmw-m-256x192 | 256×192 | 0.676 | 0.747 | 0.671 | 0.783 | 0.491 | 0.582 |
| rtmw-l-256x192 | 256×192 | 0.743 | 0.807 | 0.763 | 0.834 | 0.598 | 0.660 |
| rtmw-x-256x192 | 256×192 | 0.746 | 0.808 | 0.770 | 0.844 | 0.610 | 0.672 |
🚀 核心技术架构解析
CSPNeXt骨干网络
rtmw-l-256x192采用CSPNeXt作为骨干网络,通过跨阶段部分连接(CSP)结构有效减少计算量并增强特征提取能力。该架构使用深度可分离卷积和通道注意力机制,在保持精度的同时显著提升推理速度。
# CSPNeXt骨干网络核心结构 [modeling_rtmw.py] class CSPNeXt(nn.Module): def __init__(self, arch='P5', deepen_factor=1.0, widen_factor=1.0): super().__init__() self.stem = nn.Sequential( ConvModule(3, int(64 * widen_factor // 2), 3, padding=1, stride=2), ConvModule(int(64 * widen_factor // 2), int(64 * widen_factor), 3, padding=1) ) # 多阶段特征提取网络 self.stages = self._make_stages(arch, deepen_factor, widen_factor)CSPNeXtPAFPN特征融合
颈部采用CSPNeXtPAFPN结构,通过自顶向下和自底向上的路径聚合,有效融合不同尺度的特征信息,为后续关键点检测提供丰富的语义特征。
RTMWHead与SimCC编码解码
头部网络采用RTMWHead结构,结合SimCC(Simple Coordinate Classification)编码解码技术,将2D坐标预测转化为1D分类问题。SimCC使用高斯标签平滑策略,配合Gau(Gated Attention Unit)注意力机制,实现高精度的关键点定位。
# SimCC解码过程 [modeling_rtmw.py] def decode(self, simcc_x: torch.Tensor, simcc_y: torch.Tensor) -> Tuple[torch.Tensor, torch.Tensor]: keypoints, scores = get_simcc_maximum(simcc_x, simcc_y) if self.use_dark: # 应用DARK后处理优化坐标精度 keypoints = refine_simcc_dark(keypoints, simcc_x, blur_kernel_size=11) # 转换到图像坐标空间 keypoints /= self.simcc_split_ratio return keypoints, scores💡 实用功能与使用方法
多种坐标模式
rtmw-l-256x192支持三种坐标模式,满足不同应用场景需求:
- 模型空间坐标:原始SimCC空间,与模型输入分辨率一致
- 图像空间坐标:通过提供的边界框(bbox)将关键点映射回原始图像
- 根相对坐标:以髋关节中点为原点,归一化的坐标系统,适用于动作识别等任务
# 坐标模式使用示例 [README.md] # 模型空间坐标 out_model = model(**inputs, coordinate_mode="model") # 图像空间坐标(需要提供边界框) bbox = torch.tensor([[120, 40, 380, 620]]) # [x1, y1, x2, y2] out_image = model(**inputs, coordinate_mode="image", bbox=bbox) # 根相对坐标 out_root = model(**inputs, coordinate_mode="root_relative")端到端人体姿态估计
结合RTMDet目标检测器,可实现端到端的多人姿态估计:
# 端到端检测与姿态估计流程 [README.md] # 加载模型 rtmdet = AutoModel.from_pretrained("akore/rtmdet-tiny", trust_remote_code=True).eval() rtmw = AutoModel.from_pretrained("akore/rtmw-l-256x192", trust_remote_code=True).eval() # 检测人体 det_inputs = rtmdet_proc(images=pil_img, return_tensors="pt") det_out = rtmdet(pixel_values=det_inputs["pixel_values"], original_size=(orig_h, orig_w)) # 姿态估计 crops = [pil_img.crop(box.tolist()) for box in det_out.boxes[0]] inputs = rtmw_proc(images=crops, return_tensors="pt") out = rtmw(pixel_values=inputs["pixel_values"], coordinate_mode="image", bbox=det_out.boxes[0])📊 训练数据与评估
rtmw-l-256x192在Cocktail14数据集上进行训练,该数据集融合了14个公开数据集,包括AI Challenger、CrowdPose、MPII、COCO-WholeBody等,涵盖了各种场景和姿态变化。
模型评估使用COCO-WholeBody v1.0验证集,采用标准的AP(平均精度)和AR(平均召回率)指标,全面评估身体、面部、手部和足部关键点检测性能。
🚀 快速开始
环境准备
# 克隆仓库 git clone https://gitcode.com/hf_mirrors/akore/rtmw-l-256x192 cd rtmw-l-256x192 # 安装依赖 pip install -r requirements.txt基础使用示例
from transformers import AutoModel, AutoImageProcessor from PIL import Image # 加载模型和处理器 model = AutoModel.from_pretrained("akore/rtmw-l-256x192", trust_remote_code=True) processor = AutoImageProcessor.from_pretrained("akore/rtmw-l-256x192") # 处理图像 image = Image.open("person.jpg").convert("RGB") inputs = processor(images=image, return_tensors="pt") # 推理 with torch.no_grad(): outputs = model(**inputs, coordinate_mode="image", bbox=[[50, 50, 300, 400]]) # 输出结果 print("关键点坐标:", outputs.keypoints) print("置信度分数:", outputs.scores)📝 总结
rtmw-l-256x192凭借其创新的网络架构、高效的特征提取和精确的关键点定位技术,在COCO-WholeBody数据集上实现了74.3%的身体AP,成为实时全身姿态估计领域的性能之王。无论是用于动作识别、人机交互还是视频分析,rtmw-l-256x192都能提供高精度、高效率的姿态估计结果,为计算机视觉应用开发提供强大支持。
通过结合CSPNeXt骨干网络、CSPNeXtPAFPN特征融合和SimCC编码解码技术,rtmw-l-256x192在保持实时性的同时,实现了对133个全身关键点的精确检测,为相关研究和应用提供了理想的解决方案。
【免费下载链接】rtmw-l-256x192项目地址: https://ai.gitcode.com/hf_mirrors/akore/rtmw-l-256x192
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考