Killing a C++ server to save a 2017 pose estimator in Keras
It reimplements a 2017 CVPR pose estimator in Keras to escape a buggy, slow C++ data server.

What it does
This is a Keras reproduction of the 2017 CVPR paper Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields. It converts the original authors’ pre-trained Caffe model into Keras format and provides training code against the COCO dataset. The main objective was dropping the original pipeline’s separate C++ rmpe_dataset_server in favor of a Python-native dataflow.
The interesting bit
The author rebuilt the data pipeline using tensorpack so masks and augmentations happen on the fly without a separate C++ server. That fixed mask-assignment bugs and removed the need to pre-generate mostly-empty mask files.
Key highlights
- Converts the original Caffe weights to Keras; a pre-converted model is available via Dropbox.
- Replaces the old C++
rmpe_dataset_serverwithtensorpackdataflow for multi-process Python-native preprocessing. - Generates masks on the fly instead of relying on pre-computed, often-empty mask files.
- Masks out unlabeled background people so the network doesn’t learn from ghost keypoints.
- The author reports training for roughly 10 hours on a single GTX 1070 (5 epochs / 25,000 iterations) to produce reasonable demo results.
Caveats
- The repository is explicitly deprecated; the author states it is incompatible with TensorFlow 2.0 and has moved active development to a fresh TensorFlow-centric repo.
- It is essentially glue and conversion code around a 2017 Caffe model, not a novel architecture.
Verdict Worth a look if you specifically need a Keras-native 2017 pose estimator and can tolerate legacy TensorFlow. Otherwise, follow the author’s own advice and jump to their newer TensorFlow 2.0 repository instead.
Frequently asked
- What is michalfaber/keras_Realtime_Multi-Person_Pose_Estimation?
- It reimplements a 2017 CVPR pose estimator in Keras to escape a buggy, slow C++ data server.
- Is keras_Realtime_Multi-Person_Pose_Estimation open source?
- Yes — michalfaber/keras_Realtime_Multi-Person_Pose_Estimation is an open-source project tracked on heatdrop.
- What language is keras_Realtime_Multi-Person_Pose_Estimation written in?
- michalfaber/keras_Realtime_Multi-Person_Pose_Estimation is primarily written in Jupyter Notebook.
- How popular is keras_Realtime_Multi-Person_Pose_Estimation?
- michalfaber/keras_Realtime_Multi-Person_Pose_Estimation has 783 stars on GitHub.
- Where can I find keras_Realtime_Multi-Person_Pose_Estimation?
- michalfaber/keras_Realtime_Multi-Person_Pose_Estimation is on GitHub at https://github.com/michalfaber/keras_Realtime_Multi-Person_Pose_Estimation.