ee.Algorithms.TemporalSegmentation.StructuralChangeBreakpoints
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Exécute la détection des points d'arrêt, comme la fonction breakpoints de strucchange::breakpoints de R.
Chaque pixel est ajusté par un modèle linéaire/harmonique par morceaux, de la forme
Y = A + B * t + C * cos(2 * pi * season(t)) + D * sin(2 * pi * season(t)) + E * cos(4 * pi * season(t)) + F * sin(4 * pi * season(t)) + ...
Dans cette équation, "t" correspond à l'heure de début de l'image au format spécifié par "dateFormat", et "season(t)" correspond à la fraction de l'année de cette heure de début (consultez la description de dateFormat pour en savoir plus). L'ordre maximal des termes harmoniques est déterminé par "seasonalModelOrder".
Le résultat est une image contenant deux bandes, plus deux bandes par bande dans l'entrée :
tStart
, tEnd
: chacun de ces éléments contient un tableau à une dimension, avec une entrée par segment dans l'ajustement linéaire par morceaux. Chaque entrée contient l'heure de début des première et dernière images de ce segment. Par défaut, les valeurs sont exprimées en fractions d'année pour faciliter l'utilisation des coefficients.
coefs_BANDNAME
: il y aura une bande de sortie par bande d'entrée. Chacun d'eux contient un tableau 2D, avec une ligne par segment. Les valeurs de cette ligne correspondent aux coefficients de l'ajustement linéaire pour ce segment, c'est-à-dire les valeurs de A, B, C, etc. pour ce segment. Comme décrit ci-dessus, les valeurs ici sont affectées par "dateFormat".
.rmse_BANDNAME
: une bande de sortie est générée pour chaque bande d'entrée. Il contient un tableau 1D, avec une entrée par segment. La valeur de chaque segment correspond à la RMSE des résidus d'ajustement linéaire pour ce segment.
Utilisation | Renvoie |
---|
ee.Algorithms.TemporalSegmentation.StructuralChangeBreakpoints(collection, breakpointBand, seasonalModelOrder, minSpacing, maxBreaks, dateFormat) | Image |
Argument | Type | Détails |
---|
collection | ImageCollection | Collection d'images sur lesquelles détecter les points d'arrêt. |
breakpointBand | Chaîne, valeur par défaut : null | Nom de la bande à utiliser pour la détection des points d'arrêt. Facultatif uniquement si les images ne comportent qu'une seule bande. |
seasonalModelOrder | Entier, par défaut : 3 | Ordre du modèle saisonnier harmonique. |
minSpacing | Float, valeur par défaut : 0,15 | Espacement minimal entre les points d'arrêt. Si cette valeur est comprise entre 0 et 1 (exclus), elle sera interprétée comme une fraction du nombre d'images de la collection. Sinon, il sera interprété comme un nombre d'échantillons. |
maxBreaks | Entier, valeur par défaut : 0 | Nombre maximal de points d'arrêt. |
dateFormat | Entier, valeur par défaut : 1 | Représentation temporelle à utiliser dans les résultats : 1 = années fractionnaires, 2 = heure Unix en millisecondes. Cela affecte les valeurs des bandes tStart et tEnd, ainsi que les valeurs "t" utilisées dans le modèle harmonique. Les années fractionnaires utilisées ici et dans ce modèle sont définies comme le nombre fractionnaire d'années de 365,25 jours depuis le 1er janvier 1970. |
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/26 (UTC).
[null,null,["Dernière mise à jour le 2025/07/26 (UTC)."],[[["\u003cp\u003eDetects breakpoints in an image collection using a piecewise linear/harmonic model, similar to R's \u003ccode\u003estrucchange::breakpoints\u003c/code\u003e function.\u003c/p\u003e\n"],["\u003cp\u003eOutputs an image with bands indicating breakpoint start/end times, model coefficients for each segment, and RMSE for each segment's fit.\u003c/p\u003e\n"],["\u003cp\u003eAllows customization of the harmonic model's order, minimum breakpoint spacing, maximum number of breakpoints, and time representation format.\u003c/p\u003e\n"],["\u003cp\u003eUses a model that incorporates a linear trend and seasonal harmonics to fit pixel values over time.\u003c/p\u003e\n"],["\u003cp\u003eThe algorithm identifies the optimal breakpoints by minimizing the residual error of the piecewise model.\u003c/p\u003e\n"]]],["The function `StructuralChangeBreakpoints` detects breakpoints in an image collection, fitting each pixel with a piecewise linear/harmonic model. Input parameters include `collection`, `breakpointBand`, `seasonalModelOrder`, `minSpacing`, `maxBreaks`, and `dateFormat`. The output image contains `tStart` and `tEnd` bands, which hold segment start and end times. Additionally, there are `coefs_BANDNAME` bands, that contain linear fit coefficients and `rmse_BANDNAME` bands with the root-mean-square error for each segment.\n"],null,["# ee.Algorithms.TemporalSegmentation.StructuralChangeBreakpoints\n\nRuns breakpoint detection, similar to R's strucchange::breakpoints function.\n\n\u003cbr /\u003e\n\nEach pixel is fit by a piecewise linear/harmonic model, of the form\n\nY = A + B \\* t + C \\* cos(2 \\* pi \\* season(t)) + D \\* sin(2 \\* pi \\* season(t)) + E \\* cos(4 \\* pi \\* season(t)) + F \\* sin(4 \\* pi \\* season(t)) + ...\n\nIn this equation, 't' is the start time of the image in the format specified by 'dateFormat', and 'season(t)' is the fractional year of that start time (see the description of dateFormat for details). The maximum order of the harmonic terms is determined by 'seasonalModelOrder'.\n\nThe result is an image containing two bands, plus two bands per band in the input:\n\n`tStart`, `tEnd`: each of these holds a 1D array, with one entry per segment in the piecewise linear fit; each entry contains the start time of the first or last images in that segment. By default the values here are in fractional years, for easy use with the coefficients.\n\n`coefs_BANDNAME`: there will be one such output band per input band. Each of these holds a 2D array, with one row per segment. The values in that row are the coefficients of the linear fit for that segment - that is, the values of A, B, C, ... for that segment. As described above, the values here are affected by 'dateFormat'\n\n.`rmse_BANDNAME`: there will be one such output band per input band. This holds a 1D array, with one entry per segment. The value for each segment is the RMSE for the linear fit residuals for that segment.\n\n| Usage | Returns |\n|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------|\n| `ee.Algorithms.TemporalSegmentation.StructuralChangeBreakpoints(collection, `*breakpointBand* `, `*seasonalModelOrder* `, `*minSpacing* `, `*maxBreaks* `, `*dateFormat*`)` | Image |\n\n| Argument | Type | Details |\n|----------------------|-----------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `collection` | ImageCollection | Collection of images on which to detect breakpoints. |\n| `breakpointBand` | String, default: null | The name of the band to use for breakpoint detection. Optional only if the images have only a single band. |\n| `seasonalModelOrder` | Integer, default: 3 | The order of the harmonic seasonal model. |\n| `minSpacing` | Float, default: 0.15 | The minimum spacing between breakpoints. If this is between 0 and 1 (exclusive), it will be interpreted as a fraction of the number of images in the collection. Otherwise, it will be interpreted as a number of samples. |\n| `maxBreaks` | Integer, default: 0 | The maximum number of breakpoints. |\n| `dateFormat` | Integer, default: 1 | The time representation to use in the results: 1 = fractional years, 2 = unix time in milliseconds. This affects the values in the tStart and tEnd bands and the 't' values used in the harmonic model. The fractional years used here and in that model are defined as the fractional number of 365.25-day years since 1 Jan 1970. |"]]