BufferTransformerConfig#
Note
All Configs are derived from rastervision.pipeline.config.Config
, which itself is a pydantic Model.
- pydantic model BufferTransformerConfig[source]#
Configure a
BufferTransformer
.This is useful, for example, for buffering lines representing roads so that their width roughly matches the width of roads in the imagery.
Show JSON schema
{ "title": "BufferTransformerConfig", "description": "Configure a :class:`.BufferTransformer`.\n\nThis is useful, for example, for buffering lines representing roads so that\ntheir width roughly matches the width of roads in the imagery.", "type": "object", "properties": { "type_hint": { "const": "buffer_transformer", "default": "buffer_transformer", "enum": [ "buffer_transformer" ], "title": "Type Hint", "type": "string" }, "geom_type": { "description": "The geometry type to apply this transform to. E.g. \"LineString\", \"Point\", \"Polygon\".", "title": "Geom Type", "type": "string" }, "class_bufs": { "additionalProperties": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "default": {}, "description": "Mapping from class IDs to buffer amounts (in pixels). If a class ID is not found in the mapping, the value specified by the default_buf field will be used. If the buffer value for a class is None, then no buffering will be applied to the geoms of that class and the geom won't get converted to a Polygon. Not converting to Polygon is incompatible with the currently available LabelSources, but may be useful in the future.", "title": "Class Bufs", "type": "object" }, "default_buf": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": 1, "description": "Default buffer to apply to classes not in class_bufs. If None, no buffering will be applied to the geoms of those classes.", "title": "Default Buf" } }, "additionalProperties": false, "required": [ "geom_type" ] }
- Config:
extra: str = forbid
validate_assignment: bool = True
- Fields:
- field class_bufs: dict[int, float | None] = {}#
Mapping from class IDs to buffer amounts (in pixels). If a class ID is not found in the mapping, the value specified by the default_buf field will be used. If the buffer value for a class is None, then no buffering will be applied to the geoms of that class and the geom won’t get converted to a Polygon. Not converting to Polygon is incompatible with the currently available LabelSources, but may be useful in the future.
- field default_buf: float | None = 1#
Default buffer to apply to classes not in class_bufs. If None, no buffering will be applied to the geoms of those classes.
- field geom_type: str [Required]#
The geometry type to apply this transform to. E.g. “LineString”, “Point”, “Polygon”.
- build(class_config: ClassConfig | None = None) BufferTransformer [source]#
Build an instance of the corresponding type of object using this config.
For example, BackendConfig will build a Backend object. The arguments to this method will vary depending on the type of Config.
- Parameters:
class_config (ClassConfig | None) –
- Return type:
- classmethod deserialize(inp: str | dict | Config) Self #
Deserialize Config from a JSON file or dict, upgrading if possible.
If
inp
is already aConfig
, it is returned as is.
- classmethod from_dict(cfg_dict: dict) Self #
Deserialize Config from a dict.
- Parameters:
cfg_dict (dict) – Dict to deserialize.
- Return type:
Self
- classmethod from_file(uri: str) Self #
Deserialize Config from a JSON file, upgrading if possible.
- Parameters:
uri (str) – URI to load from.
- Return type:
Self
- recursive_validate_config()#
Recursively validate hierarchies of Configs.
This uses reflection to call validate_config on a hierarchy of Configs using a depth-first pre-order traversal.
- revalidate()#
Re-validate an instantiated Config.
Runs all Pydantic validators plus self.validate_config().
- to_file(uri: str, with_rv_metadata: bool = True) None #
Save a Config to a JSON file, optionally with RV metadata.
- update(pipeline: RVPipelineConfig | None = None, scene: SceneConfig | None = None) None #
Update any fields before validation.
Subclasses should override this to provide complex default behavior, for example, setting default values as a function of the values of other fields. The arguments to this method will vary depending on the type of Config.
- Parameters:
pipeline (RVPipelineConfig | None) –
scene (SceneConfig | None) –
- Return type:
None
- validate_config()#
Validate fields that should be checked after update is called.
This is to complement the builtin validation that Pydantic performs at the time of object construction.