ARCHEO_* environment variables when no YAML config file is found. This makes it straightforward to configure the tool in containerized environments, CI pipelines, or any context where writing a config file is inconvenient.
Environment variables are only applied when no YAML config file is discovered during the directory traversal. If a
config.yaml (or equivalent) is found, it takes full precedence and environment variables are not read.Available environment variables
Detection
Hex color code of the target object to detect. Maps to
detection.target_color.Default: #A98876Minimum contour area in pixels. Objects smaller than this value are discarded. Maps to
detection.min_area.Default: 50 — must be ≥ 1Maximum contour area in pixels. Objects larger than this value are discarded. Maps to
detection.max_area.Default: 5000 — must be ≥ 1Clustering
Maximum number of clusters (K) evaluated by the elbow method. Maps to
clustering.max_k.Default: 10 — range: 2–50Paths
Path to the base directory for input data. Maps to
paths.data_dir.Default: ./dataPath to the directory where results are written. Maps to
paths.results_dir.Default: ./resultsApplication
Enable debug mode. Accepts
true, 1, or yes (case-insensitive) to enable; any other value leaves debug mode off. Maps to debug.Default: falseLogging verbosity level. The value is uppercased automatically. Maps to
log_level.Default: INFO — accepted values: DEBUG, INFO, WARNING, ERRORMapping to config fields
The table below summarizes the full mapping between environment variables and their corresponding YAML config fields.| Environment variable | Config field | Type |
|---|---|---|
ARCHEO_TARGET_COLOR | detection.target_color | string |
ARCHEO_MIN_AREA | detection.min_area | integer |
ARCHEO_MAX_AREA | detection.max_area | integer |
ARCHEO_MAX_K | clustering.max_k | integer |
ARCHEO_DATA_DIR | paths.data_dir | path |
ARCHEO_RESULTS_DIR | paths.results_dir | path |
ARCHEO_DEBUG | debug | boolean |
ARCHEO_LOG_LEVEL | log_level | string |
Example: CI pipeline
The following shell block shows a typical CI configuration that sets all relevant variables before running the pipeline:Limitations
Not every config field is exposed as an environment variable. The following fields can only be set viaconfig.yaml or the Python API:
detection.kernel_sizedetection.hue_offsetdetection.saturation_offsetdetection.value_offsetclustering.random_stateclustering.min_samples_per_clusterclustering.compute_silhouettepaths.plots_dir
