  We consider the problem of detecting change-points in univariate time series
by fitting a continuous piecewise linear signal using the residual sum of
squares. Values of the inferred signal at slope breaks are restricted to a
finite set of size $m$. Using this finite parameter space, we build a dynamic
programming algorithm with a controlled time complexity of $O(m^2n^2)$ for $n$
data points. Some accelerating strategies can be used to reduce the constant
before $n^2$. The adapted classic inequality-based pruning is outperformed by a
simpler "channel" method on simulations. Besides, our finite parameter space
setting allows an easy introduction of constraints on the inferred signal. For
example, imposing a minimal angle between consecutive segment slopes provides
robustness to model misspecification and outliers. We test our algorithm with
an isotonic constraint on an antibiogram image analysis problem for which
algorithmic efficiency is a cornerstone in the emerging context of
mobile-health and embedded medical devices. For this application, a finite
state approach can be a valid compromise.
