Skip to content
Synthetic Occlusion Augmentation
Branch: master
Clone or download
Latest commit 3607e79 Sep 18, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.

Synthetic Occlusion Data Augmentation

Occlusion augmented examples

In computer vision, synthetically augmenting training input images by pasting objects onto them has been shown to improve performance across several tasks, including object detection, facial landmark localization and human pose estimation.

Such pasting is also useful for evaluating a model's robustness to (synthetic) occlusions appearing on the test inputs.

This is the implementation we used in our IROS'18 workshop paper to study occlusion-robustness in 3D human pose estimation, and to achieve first place in the 2018 ECCV PoseTrack Challenge on 3D human pose estimation. Method description and detailed results for the latter can be found in our short paper on arXiv.

Contact: István Sárándi


You'll need the scientific Python stack (with Python 3), OpenCV and Pillow to run this code.

Getting Started

Clone the repo.

git clone
cd synthetic-occlusion

Download and extract the Pascal VOC training/validation data (2 GB).

tar -xf VOCtrainval_11-May-2012.tar

Test if it works (after some time this should show occluded examples of the "astronaut" image, like above).

./ VOCdevkit/VOC2012

Example Use in Python

occluders = load_occluders(pascal_voc_path=PATH_TO_THE_VOC2012_DIR)
example_image = cv2.resize(, (256,256))
occluded_image = occlude_with_objects(example_image, occluders)


[1] I. Sárándi; T. Linder; K. O. Arras; B. Leibe: "How Robust is 3D Human Pose Estimation to Occlusion?" Accepted for IEEE/RSJ Int. Conference on Intelligent Robots and Systems (IROS'18) Workshops, to appear (2018) arXiv:1808.09316

[2] I. Sárándi; T. Linder; K. O. Arras; B. Leibe: "Synthetic Occlusion Augmentation with Volumetric Heatmaps for the 2018 ECCV PoseTrack Challenge on 3D Human Pose Estimation" (extended abstract) ECCV Workshops (2018) arXiv:1809.04987

You can’t perform that action at this time.