StatsTransformerConfig#

Note

All Configs are derived from rastervision.pipeline.config.Config, which itself is a pydantic Model.

pydantic model StatsTransformerConfig[source]#

Configure a StatsTransformer.

Show JSON schema
{
   "title": "StatsTransformerConfig",
   "description": "Configure a :class:`.StatsTransformer`.",
   "type": "object",
   "properties": {
      "type_hint": {
         "const": "stats_transformer",
         "default": "stats_transformer",
         "title": "Type Hint",
         "type": "string"
      },
      "stats_uri": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "description": "The URI of the output of the StatsAnalyzer. If None, and this Config is inside an RVPipeline, this field will be auto-generated.",
         "title": "Stats Uri"
      },
      "scene_group": {
         "default": "train_scenes",
         "description": "Name of the group of scenes whose stats to use. Defaultsto \"train_scenes\".",
         "title": "Scene Group",
         "type": "string"
      },
      "needs_channel_order": {
         "default": false,
         "description": "Whether the means and stds in the stats_uri file need to be re-ordered/subsetted using ``channel_order`` to be compatible with the chips that will be passed to the :class:`.StatsTransformer` by the :class:`.RasterSource`. This field exists for backward compatibility with Raster Vision versions <= 0.30. It will be set automatically when loading stats from older model-bundles.",
         "title": "Needs Channel Order",
         "type": "boolean"
      }
   },
   "additionalProperties": false
}

Config:
  • extra: str = forbid

  • validate_assignment: bool = True

Fields:
field needs_channel_order: bool = False#

Whether the means and stds in the stats_uri file need to be re-ordered/subsetted using channel_order to be compatible with the chips that will be passed to the StatsTransformer by the RasterSource. This field exists for backward compatibility with Raster Vision versions <= 0.30. It will be set automatically when loading stats from older model-bundles.

field scene_group: str = 'train_scenes'#

Name of the group of scenes whose stats to use. Defaultsto “train_scenes”.

field stats_uri: str | None = None#

The URI of the output of the StatsAnalyzer. If None, and this Config is inside an RVPipeline, this field will be auto-generated.

field type_hint: Literal['stats_transformer'] = 'stats_transformer'#
build(channel_order: list[int] | None = None) StatsTransformer[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:

channel_order (list[int] | None) –

Return type:

StatsTransformer

classmethod deserialize(inp: str | dict | Config) Self#

Deserialize Config from a JSON file or dict, upgrading if possible.

If inp is already a Config, it is returned as is.

Parameters:

inp (str | dict | Config) – a URI to a JSON file or a dict.

Return type:

Self

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.

Parameters:
  • uri (str) – URI to save to.

  • with_rv_metadata (bool) – If True, inject Raster Vision metadata such as plugin_versions, so that the config can be upgraded when loaded.

Return type:

None

update(pipeline: RVPipelineConfig | None = None, scene: SceneConfig | None = None) None[source]#

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:
Return type:

None

update_root(root_dir: str) None[source]#
Parameters:

root_dir (str) –

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.

validate_list(field: str, valid_options: list[str])#

Validate a list field.

Parameters:
  • field (str) – name of field to validate

  • valid_options (list[str]) – values that field is allowed to take

Raises:

ConfigError – if field is invalid