This is the repository for the paper Skeleton-CutMix: Mixing Up Skeleton with Probabilistic Bone Exchange for Supervised Domain Adaptation.
You may need to manually change paths for datasets in some places.
We use NTU-60 and ETRI-Activity3D for the cross-dataset setting. We use 23 action pairs. We evaluate on both NTU
Get skeleton data for both datasets, and follow the readme.txt
in data_gen
to generate data files. Then you will have *.npy
data files and *.pkl
label files
required by .yaml
experiment config files.
Run baseline (S+T)
sh rev/common23_new_base.sh <device> <config_idx>
Run Skeleton-CutMix-S
sh rev/common23_new_beta.sh <device> <config_idx>
Run Skeleton-CutMix-W
Prepare weight matrix for part importance sampling (PIS). Follow rev/prepare_pis.txt
to run model for each body part, gather classification accuracy scores,
and calculate the weight. You may need to try different skcutmix_pis_new.py
Then sh rev/common23_new_pis.sh <device> <T>
Some of the codes are borrowed from ST-GCN, 2s-AGCN, DAGE. Thanks for their great work!
Hanchao Liu [liuhc21 at mails.tsinghua.edu.cn]