geococo.cli
Attributes
Functions
|
Initialize a new CocoDataset with user-prompted metadata |
|
Copy and (optionally) update the metadata of an existing CocoDataset |
|
Transform and add GIS annotations to an existing CocoDataset |
Module Contents
- geococo.cli.app
- geococo.cli.new(json_path)[source]
Initialize a new CocoDataset with user-prompted metadata
- Parameters:
json_path (typing_extensions.Annotated[pathlib.Path, typer.Argument(help='Output path for new CocoDataset', exists=False, file_okay=True, writable=True, resolve_path=True)])
- Return type:
None
- geococo.cli.copy(source_json, dest_json, update_meta=True)[source]
Copy and (optionally) update the metadata of an existing CocoDataset
- Parameters:
source_json (typing_extensions.Annotated[pathlib.Path, typer.Argument(help='Path to source CocoDataset', exists=True, readable=True, resolve_path=True)])
dest_json (typing_extensions.Annotated[pathlib.Path, typer.Argument(help='Output path for copied CocoDataset', exists=True, readable=True, resolve_path=True)])
update_meta (typing_extensions.Annotated[bool, typer.Option(help='Whether to prompt the user for new metadata')])
- Return type:
None
- geococo.cli.add(image_path, labels_path, json_path, output_dir, width, height, id_attribute=None, name_attribute=None, super_attribute=None)[source]
Transform and add GIS annotations to an existing CocoDataset
This method generates a COCO dataset by moving across the given image (image_path) with a moving window (image_size), constantly checking for intersecting annotations (labels_path) that represent image objects in said image (e.g. buildings in satellite imagery; denoted by (super)category name and/or id). Each valid intersection will add n Annotations entries to the dataset (json_path) and save a subset of the input image that contained these entries (output_dir).
The output data size depends on your input labels, as the moving window adjusts its step size to accommodate the average annotation size, optimizing dataset representation and minimizing tool configuration. Each addition will also increment the dataset version: patch if using the same image_path, minor if using a new image_path, and major if using a new output_dir.
- Parameters:
image_path (typing_extensions.Annotated[pathlib.Path, typer.Argument(help='Path to geospatial image containing image objects', exists=True, readable=True, resolve_path=True)])
labels_path (typing_extensions.Annotated[pathlib.Path, typer.Argument(help='Path to vector file containing annotated image objects', exists=True, readable=True, resolve_path=True)])
json_path (typing_extensions.Annotated[pathlib.Path, typer.Argument(help='Path to json file containing the COCO dataset', exists=True, readable=True, resolve_path=True)])
output_dir (typing_extensions.Annotated[pathlib.Path, typer.Argument(help='Path to output directory for image subsets', exists=True, readable=True, resolve_path=True)])
width (typing_extensions.Annotated[int, typer.Argument(help='Width of image subsets')])
height (typing_extensions.Annotated[int, typer.Argument(help='Height of image subsets')])
id_attribute (typing_extensions.Annotated[Optional[str], typer.Option(help='Name of column containing category_id values (optional if --name_attribute is given)')])
name_attribute (typing_extensions.Annotated[Optional[str], typer.Option(help='Name of column containing category_name values (optional if --id_attribute is given)')])
super_attribute (typing_extensions.Annotated[Optional[str], typer.Option(help='Name of column containing supercategory values')])
- Return type:
None