Skip to content

Commit

Permalink
[Feature] Support AnimalKingdom dataset (#2139)
Browse files Browse the repository at this point in the history
  • Loading branch information
Dominic23331 committed May 20, 2023
1 parent a83e7de commit 65ef573
Show file tree
Hide file tree
Showing 20 changed files with 2,411 additions and 10 deletions.
267 changes: 267 additions & 0 deletions configs/_base_/datasets/ak.py
@@ -0,0 +1,267 @@
dataset_info = dict(
dataset_name='Animal Kingdom',
paper_info=dict(
author='Singapore University of Technology and Design, Singapore.'
' Xun Long Ng, Kian Eng Ong, Qichen Zheng,'
' Yun Ni, Si Yong Yeo, Jun Liu.',
title='Animal Kingdom: '
'A Large and Diverse Dataset for Animal Behavior Understanding',
container='Conference on Computer Vision '
'and Pattern Recognition (CVPR)',
year='2022',
homepage='https://sutdcv.github.io/Animal-Kingdom',
version='1.0 (2022-06)',
date_created='2022-06',
),
keypoint_info={
0:
dict(
name='Head_Mid_Top',
id=0,
color=(225, 0, 255),
type='upper',
swap=''),
1:
dict(
name='Eye_Left',
id=1,
color=[220, 20, 60],
type='upper',
swap='Eye_Right'),
2:
dict(
name='Eye_Right',
id=2,
color=[0, 255, 255],
type='upper',
swap='Eye_Left'),
3:
dict(
name='Mouth_Front_Top',
id=3,
color=(0, 255, 42),
type='upper',
swap=''),
4:
dict(
name='Mouth_Back_Left',
id=4,
color=[221, 160, 221],
type='upper',
swap='Mouth_Back_Right'),
5:
dict(
name='Mouth_Back_Right',
id=5,
color=[135, 206, 250],
type='upper',
swap='Mouth_Back_Left'),
6:
dict(
name='Mouth_Front_Bottom',
id=6,
color=[50, 205, 50],
type='upper',
swap=''),
7:
dict(
name='Shoulder_Left',
id=7,
color=[255, 182, 193],
type='upper',
swap='Shoulder_Right'),
8:
dict(
name='Shoulder_Right',
id=8,
color=[0, 191, 255],
type='upper',
swap='Shoulder_Left'),
9:
dict(
name='Elbow_Left',
id=9,
color=[255, 105, 180],
type='upper',
swap='Elbow_Right'),
10:
dict(
name='Elbow_Right',
id=10,
color=[30, 144, 255],
type='upper',
swap='Elbow_Left'),
11:
dict(
name='Wrist_Left',
id=11,
color=[255, 20, 147],
type='upper',
swap='Wrist_Right'),
12:
dict(
name='Wrist_Right',
id=12,
color=[0, 0, 255],
type='upper',
swap='Wrist_Left'),
13:
dict(
name='Torso_Mid_Back',
id=13,
color=(185, 3, 221),
type='upper',
swap=''),
14:
dict(
name='Hip_Left',
id=14,
color=[255, 215, 0],
type='lower',
swap='Hip_Right'),
15:
dict(
name='Hip_Right',
id=15,
color=[147, 112, 219],
type='lower',
swap='Hip_Left'),
16:
dict(
name='Knee_Left',
id=16,
color=[255, 165, 0],
type='lower',
swap='Knee_Right'),
17:
dict(
name='Knee_Right',
id=17,
color=[138, 43, 226],
type='lower',
swap='Knee_Left'),
18:
dict(
name='Ankle_Left',
id=18,
color=[255, 140, 0],
type='lower',
swap='Ankle_Right'),
19:
dict(
name='Ankle_Right',
id=19,
color=[128, 0, 128],
type='lower',
swap='Ankle_Left'),
20:
dict(
name='Tail_Top_Back',
id=20,
color=(0, 251, 255),
type='lower',
swap=''),
21:
dict(
name='Tail_Mid_Back',
id=21,
color=[32, 178, 170],
type='lower',
swap=''),
22:
dict(
name='Tail_End_Back',
id=22,
color=(0, 102, 102),
type='lower',
swap='')
},
skeleton_info={
0:
dict(link=('Eye_Left', 'Head_Mid_Top'), id=0, color=[220, 20, 60]),
1:
dict(link=('Eye_Right', 'Head_Mid_Top'), id=1, color=[0, 255, 255]),
2:
dict(
link=('Mouth_Front_Top', 'Mouth_Back_Left'),
id=2,
color=[221, 160, 221]),
3:
dict(
link=('Mouth_Front_Top', 'Mouth_Back_Right'),
id=3,
color=[135, 206, 250]),
4:
dict(
link=('Mouth_Front_Bottom', 'Mouth_Back_Left'),
id=4,
color=[221, 160, 221]),
5:
dict(
link=('Mouth_Front_Bottom', 'Mouth_Back_Right'),
id=5,
color=[135, 206, 250]),
6:
dict(
link=('Head_Mid_Top', 'Torso_Mid_Back'), id=6,
color=(225, 0, 255)),
7:
dict(
link=('Torso_Mid_Back', 'Tail_Top_Back'),
id=7,
color=(185, 3, 221)),
8:
dict(
link=('Tail_Top_Back', 'Tail_Mid_Back'), id=8,
color=(0, 251, 255)),
9:
dict(
link=('Tail_Mid_Back', 'Tail_End_Back'),
id=9,
color=[32, 178, 170]),
10:
dict(
link=('Head_Mid_Top', 'Shoulder_Left'),
id=10,
color=[255, 182, 193]),
11:
dict(
link=('Head_Mid_Top', 'Shoulder_Right'),
id=11,
color=[0, 191, 255]),
12:
dict(
link=('Shoulder_Left', 'Elbow_Left'), id=12, color=[255, 105,
180]),
13:
dict(
link=('Shoulder_Right', 'Elbow_Right'),
id=13,
color=[30, 144, 255]),
14:
dict(link=('Elbow_Left', 'Wrist_Left'), id=14, color=[255, 20, 147]),
15:
dict(link=('Elbow_Right', 'Wrist_Right'), id=15, color=[0, 0, 255]),
16:
dict(link=('Tail_Top_Back', 'Hip_Left'), id=16, color=[255, 215, 0]),
17:
dict(
link=('Tail_Top_Back', 'Hip_Right'), id=17, color=[147, 112, 219]),
18:
dict(link=('Hip_Left', 'Knee_Left'), id=18, color=[255, 165, 0]),
19:
dict(link=('Hip_Right', 'Knee_Right'), id=19, color=[138, 43, 226]),
20:
dict(link=('Knee_Left', 'Ankle_Left'), id=20, color=[255, 140, 0]),
21:
dict(link=('Knee_Right', 'Ankle_Right'), id=21, color=[128, 0, 128])
},
joint_weights=[
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1.
],
sigmas=[
0.025, 0.025, 0.025, 0.025, 0.025, 0.025, 0.025, 0.025, 0.025, 0.025,
0.025, 0.025, 0.025, 0.025, 0.025, 0.025, 0.025, 0.025, 0.025, 0.025,
0.025, 0.025, 0.025
])
14 changes: 14 additions & 0 deletions configs/animal_2d_keypoint/topdown_heatmap/README.md
Expand Up @@ -52,3 +52,17 @@ Results on Grévy’s Zebra test set
| ResNet-152 | 160x160 | 0.921 | 1.67 | [resnet_zebra.md](./zebra/resnet_zebra.md) |
| ResNet-101 | 160x160 | 0.915 | 1.83 | [resnet_zebra.md](./zebra/resnet_zebra.md) |
| ResNet-50 | 160x160 | 0.914 | 1.87 | [resnet_zebra.md](./zebra/resnet_zebra.md) |

### Animal-Kingdom Dataset

Results on AnimalKingdom test set

| Model | Input Size | class | PCK(0.05) | Details and Download |
| :-------: | :--------: | :-----------: | :-------: | :---------------------------------------------------: |
| HRNet-w32 | 256x256 | P1 | 0.6272 | [hrnet_animalkingdom.md](./ak/hrnet_animalkingdom.md) |
| HRNet-w32 | 256x256 | P2 | 0.3774 | [hrnet_animalkingdom.md](./ak/hrnet_animalkingdom.md) |
| HRNet-w32 | 256x256 | P3_mammals | 0.5756 | [hrnet_animalkingdom.md](./ak/hrnet_animalkingdom.md) |
| HRNet-w32 | 256x256 | P3_amphibians | 0.5356 | [hrnet_animalkingdom.md](./ak/hrnet_animalkingdom.md) |
| HRNet-w32 | 256x256 | P3_reptiles | 0.5 | [hrnet_animalkingdom.md](./ak/hrnet_animalkingdom.md) |
| HRNet-w32 | 256x256 | P3_birds | 0.7679 | [hrnet_animalkingdom.md](./ak/hrnet_animalkingdom.md) |
| HRNet-w32 | 256x256 | P3_fishes | 0.636 | [hrnet_animalkingdom.md](./ak/hrnet_animalkingdom.md) |
@@ -0,0 +1,47 @@
<!-- [ALGORITHM] -->

<details>
<summary align="right"><a href="http://openaccess.thecvf.com/content_CVPR_2019/html/Sun_Deep_High-Resolution_Representation_Learning_for_Human_Pose_Estimation_CVPR_2019_paper.html">HRNet (CVPR'2019)</a></summary>

```bibtex
@inproceedings{sun2019deep,
title={Deep high-resolution representation learning for human pose estimation},
author={Sun, Ke and Xiao, Bin and Liu, Dong and Wang, Jingdong},
booktitle={Proceedings of the IEEE conference on computer vision and pattern recognition},
pages={5693--5703},
year={2019}
}
```

</details>

<!-- [DATASET] -->

<details>
<summary align="right"><a href="https://sutdcv.github.io/Animal-Kingdom/">AnimalKingdom (CVPR'2022)</a></summary>

```bibtex
@InProceedings{
Ng_2022_CVPR,
author = {Ng, Xun Long and Ong, Kian Eng and Zheng, Qichen and Ni, Yun and Yeo, Si Yong and Liu, Jun},
title = {Animal Kingdom: A Large and Diverse Dataset for Animal Behavior Understanding},
booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
month = {June},
year = {2022},
pages = {19023-19034}
}
```

</details>

Results on AnimalKingdom validation set

| Arch | Input Size | PCK(0.05) | Official Repo | Paper | ckpt | log |
| ------------------------------------------------------ | ---------- | --------- | ------------- | ------ | ------------------------------------------------------ | ------------------------------------------------------ |
| [P1_hrnet_w32](configs/animal_2d_keypoint/topdown_heatmap/ak/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P1-256x256.py) | 256x256 | 0.6323 | 0.6342 | 0.6606 | [ckpt](https://download.openmmlab.com/mmpose/v1/animal_2d_keypoint/topdown_heatmap/animal_kingdom/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P1-256x256-08bf96cb_20230519.pth) | [log](https://download.openmmlab.com/mmpose/v1/animal_2d_keypoint/topdown_heatmap/animal_kingdom/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P1-256x256-08bf96cb_20230519.json) |
| [P2_hrnet_w32](configs/animal_2d_keypoint/topdown_heatmap/ak/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P2-256x256.py) | 256x256 | 0.3741 | 0.3726 | 0.393 | [ckpt](https://download.openmmlab.com/mmpose/v1/animal_2d_keypoint/topdown_heatmap/animal_kingdom/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P2-256x256-2396cc58_20230519.pth) | [log](https://download.openmmlab.com/mmpose/v1/animal_2d_keypoint/topdown_heatmap/animal_kingdom/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P2-256x256-2396cc58_20230519.json) |
| [P3_mammals_hrnet_w32](configs/animal_2d_keypoint/topdown_heatmap/ak/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P3_mammal-256x256.py) | 256x256 | 0.571 | 0.5719 | 0.6159 | [ckpt](https://download.openmmlab.com/mmpose/v1/animal_2d_keypoint/topdown_heatmap/animal_kingdom/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P3_mammal-256x256-e8aadf02_20230519.pth) | [log](https://download.openmmlab.com/mmpose/v1/animal_2d_keypoint/topdown_heatmap/animal_kingdom/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P3_mammal-256x256-e8aadf02_20230519.json) |
| [P3_amphibians_hrnet_w32](configs/animal_2d_keypoint/topdown_heatmap/ak/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P3_amphibian-256x256.py) | 256x256 | 0.5358 | 0.5432 | 0.5674 | [ckpt](https://download.openmmlab.com/mmpose/v1/animal_2d_keypoint/topdown_heatmap/animal_kingdom/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P3_amphibian-256x256-845085f9_20230519.pth) | [log](https://download.openmmlab.com/mmpose/v1/animal_2d_keypoint/topdown_heatmap/animal_kingdom/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P3_amphibian-256x256-845085f9_20230519.json) |
| [P3_reptiles_hrnet_w32](configs/animal_2d_keypoint/topdown_heatmap/ak/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P3_reptile-256x256.py) | 256x256 | 0.51 | 0.5 | 0.5606 | [ckpt](https://download.openmmlab.com/mmpose/v1/animal_2d_keypoint/topdown_heatmap/animal_kingdom/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P3_reptile-256x256-e8440c16_20230519.pth) | [log](https://download.openmmlab.com/mmpose/v1/animal_2d_keypoint/topdown_heatmap/animal_kingdom/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P3_reptile-256x256-e8440c16_20230519.json) |
| [P3_birds_hrnet_w32](configs/animal_2d_keypoint/topdown_heatmap/ak/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P3_bird-256x256.py) | 256x256 | 0.7671 | 0.7636 | 0.7735 | [ckpt](https://download.openmmlab.com/mmpose/v1/animal_2d_keypoint/topdown_heatmap/animal_kingdom/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P3_bird-256x256-566feff5_20230519.pth) | [log](https://download.openmmlab.com/mmpose/v1/animal_2d_keypoint/topdown_heatmap/animal_kingdom/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P3_bird-256x256-566feff5_20230519.json) |
| [P3_fishes_hrnet_w32](configs/animal_2d_keypoint/topdown_heatmap/ak/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P3_fish-256x256.py) | 256x256 | 0.6406 | 0.636 | 0.6825 | [ckpt](https://download.openmmlab.com/mmpose/v1/animal_2d_keypoint/topdown_heatmap/animal_kingdom/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P3_fish-256x256-76c3999f_20230519.pth) | [log](https://download.openmmlab.com/mmpose/v1/animal_2d_keypoint/topdown_heatmap/animal_kingdom/td-hm_hrnet-w32_8xb32-300e_animalkingdom_P3_fish-256x256-76c3999f_20230519.json) |

0 comments on commit 65ef573

Please sign in to comment.