Skip to contents

Convenience wrapper around [segmenter_tile_engine()] that runs a two-stage segmentation per tile: (1) Felzenszwalb-Huttenlocher (FH) superpixels and (2) mean-shift clustering on region features, followed by seam-aware merging and global relabeling.

Usage

fh_meanshift_segmenter_tile(
  x,
  tile_size = 1536,
  buffer = 96,
  seam_thr = 0.8,
  out_file = "fh_meanshift_tiled_merged.tif",
  tile_dir = tempdir(),
  cleanup_tiles = FALSE,
  cleanup_seg_tiles = FALSE,
  scale_bands = TRUE,
  smooth = 3,
  fh_k = 0.5,
  fh_min_size = 20,
  eight = TRUE,
  ms_dim = 3,
  ms_ranger = 0.15,
  ms_hs = 12,
  ms_max_iter = 10,
  ms_eps = 0.001,
  mode_merge = 0.6,
  final_min_size = 80
)

Arguments

x

A `SpatRaster` to segment.

tile_size

Integer. Tile size in pixels (rows/cols) excluding buffer.

buffer

Integer. Overlap (in pixels) added around each tile.

seam_thr

Numeric. Threshold for merging seam-adjacent segments, applied to Euclidean distance between per-segment mean band vectors.

out_file

Character. Output file path for the final segmentation.

tile_dir

Character. Directory used for intermediate tile products.

cleanup_tiles

Logical. If `TRUE`, remove raw image tile files after segmentation.

cleanup_seg_tiles

Logical. If `TRUE`, remove segmented tile files once the final output is produced.

scale_bands

Logical. If `TRUE`, standardize bands before processing.

smooth

Integer. Optional smoothing window size (pixels) applied to the input prior to FH; `0` disables smoothing.

fh_k

Numeric. FH scale parameter (larger values generally yield larger base regions).

fh_min_size

Integer. Minimum FH region size in pixels.

eight

Logical. If `TRUE`, use 8-neighborhood connectivity; otherwise use 4-neighborhood.

ms_dim

Integer. Number of dimensions used for region feature vectors prior to mean-shift.

ms_ranger

Numeric. Mean-shift range/bandwidth scaling parameter used by the region mean-shift stage.

ms_hs

Numeric. Mean-shift spatial/kernel bandwidth (implementation- specific; forwarded to the underlying mean-shift routine).

ms_max_iter

Integer. Maximum mean-shift iterations.

ms_eps

Numeric. Convergence tolerance for mean-shift updates.

mode_merge

Numeric. Post-processing threshold controlling merging of similar modes/clusters after mean-shift.

final_min_size

Integer. Minimum final segment size (pixels) enforced after region clustering and mode merging.

Value

A file-backed `SpatRaster` pointing to `out_file`, containing a 1-layer integer segmentation with globally consecutive IDs.

Details

This wrapper provides tuned defaults for high-resolution imagery and is intended as a robust, scalable OBIA-style segmenter for large rasters.

This function sets `segment_fun = fh_meanshift_segmenter` and forwards all algorithm parameters through `seg_args` into [segmenter_tile_engine()].

See also

[segmenter_tile_engine()], [fh_meanshift_segmenter]