  The direct detection and characterization of planetary and substellar
companions at small angular separations is a rapidly advancing field. Dedicated
high-contrast imaging instruments deliver unprecedented sensitivity, enabling
detailed insights into the atmospheres of young low-mass companions. In
addition, improvements in data reduction and PSF subtraction algorithms are
equally relevant for maximizing the scientific yield, both from new and
archival data sets. We aim at developing a generic and modular data reduction
pipeline for processing and analysis of high-contrast imaging data obtained
with pupil-stabilized observations. The package should be scalable and robust
for future implementations and in particular well suitable for the 3-5 micron
wavelength range where typically (ten) thousands of frames have to be processed
and an accurate subtraction of the thermal background emission is critical.
PynPoint is written in Python 2.7 and applies various image processing
techniques, as well as statistical tools for analyzing the data, building on
open-source Python packages. The current version of PynPoint has evolved from
an earlier version that was developed as a PSF subtraction tool based on PCA.
The architecture of PynPoint has been redesigned with the core functionalities
decoupled from the pipeline modules. Modules have been implemented for
dedicated processing and analysis steps, including background subtraction,
frame registration, PSF subtraction, photometric and astrometric measurements,
and estimation of detection limits. The pipeline package enables end-to-end
data reduction of pupil-stabilized data and supports classical dithering and
coronagraphic data sets. As an example, we processed archival VLT/NACO L' and
M' data of beta Pic b and reassessed the planet's brightness and position with
an MCMC analysis, and we provide a derivation of the photometric error budget.
