In this paper, we propose a new generic method for detecting the number and
locations of structural breaks or change points in piecewise linear models
under stationary Gaussian noise. Our method transforms the change point
detection problem into identifying local extrema (local maxima and local
minima) through kernel smoothing and differentiation of the data sequence. By
computing p-values for all local extrema based on peak height distributions of
smooth Gaussian processes, we utilize the Benjamini-Hochberg procedure to
identify significant local extrema as the detected change points. Our method
can distinguish between two types of change points: continuous breaks (Type I)
and jumps (Type II). We study three scenarios of piecewise linear signals,
namely pure Type I, pure Type II and a mixture of Type I and Type II change
points. The results demonstrate that our proposed method ensures asymptotic
control of the False Discover Rate (FDR) and power consistency, as sequence
length, slope changes, and jump size increase. Furthermore, compared to
traditional change point detection methods based on recursive segmentation, our
approach only requires a single test for all candidate local extrema, thereby
achieving the smallest computational complexity proportionate to the data
sequence length. Additionally, numerical studies illustrate that our method
maintains FDR control and power consistency, even in non-asymptotic cases when
the size of slope changes or jumps is not large. We have implemented our method
in the R package "dSTEM" (available from
https://cran.r-project.org/web/packages/dSTEM)