Skip to content

geotrax plot

Plot trajectories and distributions.

usage: geotrax plot [-h] [--cfg CFG] [--set KEY=VALUE] [--output-folder OUTPUT_FOLDER]
                    [--log-path LOG_PATH] [--verbose] [--model MODEL [MODEL ...]]
                    [--class-names ID=NAME|FILE [ID=NAME|FILE ...]] [--ortho-folder ORTHO_FOLDER]
                    [--segmentation-folder SEGMENTATION_FOLDER]
                    [--plot-save | --no-plot-save | -ps] [--plot-show | --no-plot-show | -psh]
                    [--plot-aggregate | --no-plot-aggregate | -pa]
                    [--plot-points | --no-plot-points | -pp]
                    [--plot-segmentations | --no-plot-segmentations | -pseg]
                    [--plot-class-filter CLASS_FILTER [CLASS_FILTER ...]] [--id ID]
                    input

Trajectory and distribution plotting tool.

Positional arguments

Argument Value Config key Description
input Path to a video file, a .txt/.csv results file, or a folder containing any of these.

Optional arguments

Argument Value Config key Description
--cfg, -c CFG Pipeline config: a bundled preset name (default, confident, lenient, stable) or a path to a custom config file. Run 'geotrax config show' to list presets or 'geotrax config copy' to customize.
--set, -st KEY=VALUE Override a pipeline config value for this run; repeat for more than one, e.g. --set conf=0.35 --set iou=0.6. KEY is a dotted path ('ultralytics.conf') or any unambiguous tail of one ('conf'); an ambiguous or unknown key is an error that lists the candidates. VALUE is read with YAML rules, so true/null/0.35/[0,1,2] all mean what they do in the config file. Use the dedicated flag instead where one exists (it validates its input); passing both for the same key is an error.
--output-folder, -of OUTPUT_FOLDER output.folder Root folder for pipeline outputs. A bare name (e.g. 'results') creates a sub-folder next to each input video; an absolute path is used as-is for all inputs in a batch (not recommended when video filenames are not unique across the batch — outputs may overwrite each other). Also sets the base under which plots/ is created. Defaults to cfg -> output -> folder, historical default: 'results'.
--log-path, -lp LOG_PATH Where to write detailed logs: a directory (an auto-named <stage><timestamp><pid>.log file is created inside it, so concurrent or later runs never share a file) or a full file path ending in .log or .txt (any other new path is created as a directory). Defaults to a platform-specific log directory.
--verbose, -v Also show INFO messages on the console (default: warnings and key notices only).
--model, -m MODEL [MODEL ...] extraction.model Detection model used to resolve vehicle class names: a local path OR an 'hf://<org>/<repo>/<path/to/file>.pt' reference. Defaults to cfg -> extraction -> model.
--class-names, -cn ID=NAME|FILE [ID=NAME|FILE ...] extraction.class_rename Class-id -> name mapping: a .yaml/.json file or inline ID=NAME pairs (e.g. -cn 0=car 1=bus). Defaults to cfg -> extraction -> class_rename, then model names.

Plot background arguments

Argument Value Config key Description
--ortho-folder, -orf ORTHO_FOLDER input.ortho_folder Path to the folder with orthophoto images (.png) used as plot backgrounds for georeferenced trajectories. Defaults to cfg -> input -> ortho_folder, then 'ORTHOPHOTOS' at the same level as 'PROCESSED' in 'input'.
--segmentation-folder, -osf SEGMENTATION_FOLDER input.segmentation_folder Path to the folder containing lane segmentation CSV files (used during georeferencing for lane assignment) and, when --plot-segmentations is enabled, the corresponding overlay PNG files used as plot backgrounds. Defaults to cfg -> input -> segmentation_folder, then '<ortho-folder>/segmentations'.

Plotting arguments

Argument Value Config key Description
--plot-save, --no-plot-save, -ps plotting.save Save the plots as .pdf files. Defaults to cfg -> plotting -> save.
--plot-show, --no-plot-show, -psh plotting.show Show plots in an interactive window. Defaults to cfg -> plotting -> show.
--plot-aggregate, --no-plot-aggregate, -pa plotting.aggregate When the input is a folder, merge trajectories from all videos sharing the same location ID into a single plot per location. Defaults to cfg -> plotting -> aggregate.
--plot-points, --no-plot-points, -pp plotting.plot_points Plot discrete trajectory points instead of connected lines. Defaults to cfg -> plotting -> plot_points.
--plot-segmentations, --no-plot-segmentations, -pseg plotting.use_segmentations Produce an additional trajectory plot overlaid on the lane segmentation overlay PNG (from --segmentation-folder), alongside the standard plain-orthophoto plot. Requires pre-generated overlays (run: python tools/viz_segmentations.py <ortho_folder>/). Defaults to cfg -> plotting -> use_segmentations.
--plot-class-filter, -pcf CLASS_FILTER [CLASS_FILTER ...] plotting.class_filter Vehicle class IDs to exclude from plots (e.g. 1 2). Defaults to cfg -> plotting -> class_filter.
--id, -i ID Vehicle ID to print/plot in detail (only for non-folder input; the kinematics plot needs georeferenced results) [default: 0]