Package: openpifpaf-posetrack
This is the tracking plugin forOpenPifPaf.Installpipinstall'openpifpaf_posetrack[test,train]'# from source:pipinstall--editable'.[test,train]'PredictionThe standardopenpifpaf.videostill works exactly the same way. With this
plugin installed, you can use--checkpoint=tshufflenetv2k16(with atat the
beginning). This model can be decoded in multiple ways and you should pick one
decoder. To get started, we recommend--decoder=trackingpose:0.
Putting it all together, an example command to process a video stream from a
camera is:MPLBACKEND=macosxpython3-mopenpifpaf.video--show--long-edge=321--checkpoint=tshufflenetv2k16--decoder=trackingpose:0--source0--horizontal-flipPosetrack DatasetData. Follow the Posetrack instructions to download and untar the images.
Labels:mkdirdata-posetrackcddata-posetrack
wgethttps://posetrack.net/posetrack18-data/posetrack18_v0.45_public_labels.tar.gz
tar-xvfposetrack18_v0.45_public_labels.tar.gz
mvposetrack_data/*.
rm-rposetrack_dataGenerate PoseTrack2017 json data of the ground truth.
Usage ofoctaveinstead ofmatlabis not documented, but this seems to work:cdmatlab
octave--no-gui--eval"addpath('./external/jsonlab'); mat2json('your_relative_path/data-posetrack2017/annotations/val/'); quit"This takes a long time. It is faster on the test set:octave--no-gui--eval"addpath('./external/jsonlab'); mat2json('your_relative_path/data-posetrack2017/annotations/test/'); quit"The Posetrack poses look like these:Created withpython -m openpifpaf_posetrack.draw_poses.Train posetrack2018-cocokpst# 210226# first convert from single image to tracking modelpython3-mopenpifpaf_posetrack.imagetotracking--checkpointshufflenetv2k30# traintimepython3-mtorch.distributed.launch--nproc_per_node=4\-mopenpifpaf.train--ddp\--lr=0.0003--momentum=0.95--b-scale=10.0\--epochs=50--lr-decay4045--lr-decay-epochs=5\--batch-size=8\--weight-decay=1e-5\--dataset=posetrack2018-cocokpst--dataset-weights11--stride-apply=2\--posetrack-upsample=2\--cocokp-upsample=2--cocokp-orientation-invariant=0.1--cocokp-blur=0.1\--checkpointoutputs/tshufflenetv2k30-210217-075056-cocokp-o10s-6f9daa84.pklCUDA_VISIBLE_DEVICES=3python-mopenpifpaf.eval\--watch--checkpoint"outputs/tshufflenetv2k??-20121?-*-posetrack2018-*.pkl.epoch??[0,5]"\--dataset=posetrack2018\--loader-workers=8\--decoder=trackingpose:0\--write-predictionsThe training script supports--train-annotationsand--val-annotationsto restrict the used annotation files. This is useful for local testing.To produce submissions to the 2018 test server:CUDA_VISIBLE_DEVICES=0python-mopenpifpaf.eval\--checkpointoutputs/tshufflenetv2k30-210222-112623-posetrack2018-cocokpst-o10-123ec670.pkl\--dataset=posetrack2018--posetrack2018-eval-annotations="data-posetrack2018/annotations/test/*.json"\--loader-workers=8\--decoder=trackingpose:0\--write-predictionsFor the 2017 test server:CUDA_VISIBLE_DEVICES=1python-mopenpifpaf.eval\--checkpointoutputs/tshufflenetv2k30-210222-112623-posetrack2018-cocokpst-o10-123ec670.pkl\--dataset=posetrack2017--posetrack2017-eval-annotations="data-posetrack2017/annotations/test/*.json"\--loader-workers=8\--decoder=trackingpose:0\--write-predictionsCitation... TODO ...

@InProceedings{kreiss2019pifpaf,
  author = {Kreiss, Sven and Bertoni, Lorenzo and Alahi, Alexandre},
  title = {{PifPaf: Composite Fields for Human Pose Estimation}},
  booktitle = {The IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
  month = {June},
  year = {2019}
}