Home

Awesome

APTv2

This repo is the official implementation of "APTv2: Benchmarking Animal Pose Estimation and Tracking with a Large-scale Dataset and Beyond".

Introduction

Animal Pose Estimation and Tracking (APT) is a critical task in detecting and monitoring the keypoints of animals across a series of video frames, which is essential for understanding animal behavior. Past works relating to animals have primarily focused on either animal tracking or single-frame animal pose estimation only, neglecting the integration of both aspects. The absence of comprehensive APT datasets inhibits the progression and evaluation of animal pose estimation and tracking methods based on videos, thereby constraining their real-world applications. To fill this gap, we introduce APTv2, the pioneering large-scale benchmark for animal pose estimation and tracking. APTv2 comprises 2,749 video clips filtered and collected from 30 distinct animal species. Each video clip includes 15 frames, culminating in a total of 41,235 frames. Following meticulous manual annotation and stringent verification, we provide high-quality keypoint and tracking annotations for a total of 84,611 animal instances, split into easy and hard subsets based on the number of instances that exists in the frame. With APTv2 as the foundation, we establish a simple baseline method named ViTPoseTrack and provide benchmarks for representative models across three tracks: (1) single-frame animal pose estimation track to evaluate both intra- and inter-domain transfer learning performance, (2) low-data transfer and generalization track to evaluate the inter-species domain generalization performance, and (3) animal pose tracking track. Our experimental results deliver key empirical insights, demonstrating that APTv2 serves as a valuable benchmark for animal pose estimation and tracking. It also presents new challenges and opportunities for future research.

fig1 fig2 fig3

Supervised Results with Pretrained Models

methodmodelpretrainAPconfigweight
SimBaRes-50IN1k64.1configOnedrive
SimBaRes-50COCO67.8configOnedrive
SimBaRes-50AP-10K66.3configOnedrive
SimBaRes-101IN1k65.3configOnedrive
SimBaRes-101COCO68.1configOnedrive
SimBaRes-101AP-10K64.6configOnedrive
HRNetHR-w32IN1k68.5configOnedrive
HRNetHR-w32COCO70.1configOnedrive
HRNetHR-w32AP-10K69.8configOnedrive
HRNetHR-w48IN1k70.1configOnedrive
HRNetHR-w48COCO71.7configOnedrive
HRNetHR-w48AP-10K71.2configOnedrive
HRFormerHRFomer-SIN1k67.0configOnedrive
HRFormerHRFomer-SCOCO69.5configOnedrive
HRFormerHRFomer-SAP-10K67.2configOnedrive
HRFormerHRFomer-BIN1k69.0configOnedrive
HRFormerHRFomer-BCOCO69.7configOnedrive
HRFormerHRFomer-BAP-10K69.6configOnedrive
ViTPoseViTPose-BIN1k72.4configOnedrive
ViTPoseViTPose-BCOCO72.4configOnedrive
ViTPoseViTPose-BAP-10K72.4configOnedrive

Zero-Shot Results

modelpretrainCanidaeFelidaeHominidaeCercopithecidaeUrsidaeBovidaeAverageweight
HRNet-w32AP10K59.664.542.238.651.658.752.5Onedrive
ViTPose-BAP10K63.965.547.551.059.059.057.7Onedrive
ViTPose-LAP10K66.069.159.961.062.461.063.2Onedrive

Leave-One-Out Results of HRNet-w32 (both easy and hard)

settingCanidaeFelidaeHominidaeCercopithecidaeUrsidaeBovidaeweight
w/o Canidae66.177.868.866.375.468.3Onedrive
w/o Felidae74.468.168.967.876.166.8Onedrive
w/o Hominidae74.277.449.765.575.967.4Onedrive
w/o Cercopithecidae75.279.068.645.076.267.7Onedrive
w/o Ursidae74.277.969.966.451.367.6Onedrive
w/o Bovidae74.077.469.366.876.959.5Onedrive

Leave-One-Out Results of HRNet-w32 (only easy)

settingCanidaeFelidaeHominidaeCercopithecidaeUrsidaeBovidaeweight
w/o Canidae55.968.063.260.861.855.9Onedrive
w/o Felidae62.159.564.660.961.756.0Onedrive
w/o Hominidae62.670.147.055.361.357.5Onedrive
w/o Cercopithecidae62.669.162.938.161.956.0Onedrive
w/o Ursidae62.569.764.660.545.255.7Onedrive
w/o Bovidae61.869.565.059.963.450.9Onedrive

Tracking Results Pretrained on GOT10K

trackerRes-50Res-101HR-w32HR-w48HRFormer-SHRFormer-BViTPose-BViTPose-LAvg.weight
ViTTrack65.966.068.269.567.667.770.272.268.4Onedrive
ViTPoseTrack-B65.365.667.969.166.967.169.771.967.9Onedrive
ViTPoseTrack-L65.966.068.369.667.567.670.272.468.4Onedrive

Installation

Please refer to install.md for installation guide.

Get Started

Download the data for APTv2. After downloading the pretrained models, please conduct the experiments by running.

bash tools/dist_train.sh <Config PATH> <NUM GPUs>

To test the pretrained models performance, please run

bash tools/dist_test.sh <Config PATH> <Checkpoint PATH> <NUM GPUs>

Acknowledgement

We acknowledge the excellent implementation from mmpose.

Statement

<p align="justify">If you are interested in our work, please consider citing the following:</p>
@misc{yang2023aptv2,
      title={APTv2: Benchmarking Animal Pose Estimation and Tracking with a Large-scale Dataset and Beyond}, 
      author={Yuxiang Yang and Yingqi Deng and Yufei Xu and Jing Zhang},
      year={2023},
      eprint={2312.15612},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}