ClassInferenceTransformer#
- class ClassInferenceTransformer[source]#
Bases:
VectorTransformer
Infers missing class_ids from GeoJSON features.
- Rules:
If class_id is in feature[‘properties’], use it.
- If class_config is set and class_name or label are in
feature[‘properties’] and in class_config, use corresponding class_id.
- If class_id_to_filter is set and filter is true when applied to
feature, use corresponding class_id.
Otherwise, return the default_class_id
- __init__(default_class_id: Optional[int], class_config: Optional[ClassConfig] = None, class_id_to_filter: Optional[Dict[int, list]] = None)[source]#
Methods
__init__
(default_class_id[, class_config, ...])infer_feature_class_id
(feature, default_class_id)Infer the class_id for a GeoJSON feature.
transform
(geojson[, crs_transformer])Add class_id to feature properties and drop features with no class.
- __init__(default_class_id: Optional[int], class_config: Optional[ClassConfig] = None, class_id_to_filter: Optional[Dict[int, list]] = None)[source]#
- static infer_feature_class_id(feature: dict, default_class_id: Optional[int], class_config: Optional[ClassConfig] = None, class_id_to_filter: Optional[Dict[int, list]] = None) Optional[int] [source]#
Infer the class_id for a GeoJSON feature.
- Rules:
If class_id is in feature[‘properties’], use it.
- If class_config is set and class_name or label are in
feature[‘properties’] and in class_config, use corresponding class_id.
- If class_id_to_filter is set and filter is true when applied to
feature, use corresponding class_id.
Otherwise, return the default_class_id.
- transform(geojson: dict, crs_transformer: Optional[CRSTransformer] = None) dict [source]#
Add class_id to feature properties and drop features with no class.
For each feature in geojson, the class_id is inferred and is set into feature[‘properties’]. If the class_id is None (because none of the rules apply and the default_class_id is None), the feature is dropped.
- Parameters
geojson (dict) –
crs_transformer (Optional[CRSTransformer]) –
- Return type