chariot.watchbox package
Submodules
chariot.watchbox.chariot_requests module
chariot.watchbox.imagery_providers module
chariot.watchbox.imagery_requests module
chariot.watchbox.models module
- class chariot.watchbox.models.ChariotRequest(*, id: str, date_created: datetime | None = None, date_processing_completed: datetime | None = None, date_updated: datetime | None = None, execution_count: int | None = None, imagery: str | None = None, model_id: str | None = None, name: str | None = None, result: str | None = None, status: str | None = None, triage_event_id: str | None = None)[source]
Bases:
BaseModelWithValidators- date_created: datetime | None
- date_processing_completed: datetime | None
- date_updated: datetime | None
- execution_count: int | None
- id: str
- imagery: str | None
- model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_id: str | None
- name: str | None
- result: str | None
- status: str | None
- triage_event_id: str | None
- class chariot.watchbox.models.Cluster(*, id: str, count: int | None = None, centroid: GeoJSON | None = None)[source]
Bases:
BaseModelWithValidators- count: int | None
- id: str
- model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class chariot.watchbox.models.CreateWatchboxRequest(*, project_id: str, name: str | None = None, description: str | None = None, area: GeoJSON | None = None, imagery_providers: list[str] | None = None, models: list[WatchboxModel] | None = None, provider_filters: list[dict] | None = None)[source]
Bases:
BaseModelWithValidators- description: str | None
- imagery_providers: list[str] | None
- model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- models: list[WatchboxModel] | None
- name: str | None
- project_id: str
- provider_filters: list[dict] | None
- class chariot.watchbox.models.DetectionVerificationStatus(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]
Bases:
str,Enum- NeedsReview = 'needs_review'
- NotReviewed = 'not_reviewed'
- Rejected = 'rejected'
- Verified = 'verified'
- class chariot.watchbox.models.GeoJSON(*, coordinates: list[list[list[float]]] | list[float], type: str)[source]
Bases:
BaseModelWithValidatorsGeoJSON object, either a Polygon or a Point.
- coordinates: list[list[list[float]]] | list[float]
- model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- type: str
- class chariot.watchbox.models.ImageryProvider(*, id: str, name: str | None = None, handler_id: str | None = None, date_created: datetime | None = None, date_updated: datetime | None = None)[source]
Bases:
BaseModelWithValidators- date_created: datetime | None
- date_updated: datetime | None
- handler_id: str | None
- id: str
- model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- name: str | None
- class chariot.watchbox.models.ProviderOption(*, default: str | None = None, description: str | None = None, label: str | None = None, name: str | None = None, options: list[str] | None = None, required: bool | None = None, type: str | None = None)[source]
Bases:
BaseModelWithValidators- default: str | None
- description: str | None
- label: str | None
- model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- name: str | None
- options: list[str] | None
- required: bool | None
- type: str | None
- class chariot.watchbox.models.TaskType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]
Bases:
str,Enum- ObjectDetection = 'Object Detection'
- OrientedObjectDetection = 'Oriented Object Detection'
- class chariot.watchbox.models.TriageEvent(*, id: str, chariot_request: list[ChariotRequest] | None = None, date_created: datetime | None = None, date_updated: datetime | None = None, imagery_request: dict | None = None, review_status: TriageEventReviewStatus | None = None, task_type: TaskType | None = None, watch_point: str | None = None, area: GeoJSON | None = None)[source]
Bases:
BaseModelWithValidators- chariot_request: list[ChariotRequest] | None
- date_created: datetime | None
- date_updated: datetime | None
- id: str
- imagery_request: dict | None
- model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- review_status: TriageEventReviewStatus | None
- watchbox_id: str | None
- class chariot.watchbox.models.TriageEventReviewStatus(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]
Bases:
str,Enum- NotReviewed = 'not_reviewed'
- Reviewed = 'reviewed'
- class chariot.watchbox.models.UpdateWatchboxRequest(*, active: bool | None = None, name: str | None = None, description: str | None = None, imagery_providers: list[str] | None = None, models: list[WatchboxModel] | None = None, provider_filters: list[dict] | None = None)[source]
Bases:
BaseModelWithValidators- active: bool | None
- description: str | None
- imagery_providers: list[str] | None
- model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- models: list[WatchboxModel] | None
- name: str | None
- provider_filters: list[dict] | None
- class chariot.watchbox.models.WatchBox(*, id: str, active: bool, area: GeoJSON | None = None, date_created: datetime | None = None, date_updated: datetime | None = None, description: str | None = None, imagery_providers: list[str] | None = None, last_checked: datetime | None = None, models: list[WatchboxModel] | None = None, name: str | None = None, project_id: str | None = None, provider_filters: list[dict] | None = None, triage_events: list[TriageEvent] | None = None)[source]
Bases:
BaseModelWithValidators- active: bool
- date_created: datetime | None
- date_updated: datetime | None
- description: str | None
- id: str
- imagery_providers: list[str] | None
- last_checked: datetime | None
- model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- models: list[WatchboxModel] | None
- name: str | None
- project_id: str | None
- provider_filters: list[dict] | None
- triage_events: list[TriageEvent] | None
- class chariot.watchbox.models.WatchboxDetection(*, id: str | None = None, area: GeoJSON | None = None, bbox: str | None = None, chariot_request: str | None = None, chip: str | None = None, classification: str | None = None, created_by: str | None = None, dataset: str | None = None, date_created: datetime | None = None, date_updated: datetime | None = None, deleted_at: datetime | None = None, detection_metadata: str | dict | None = None, inference_id: str | None = None, lat: float | int | None = None, lon: float | int | None = None, reviewed_by: str | None = None, score: float | int | None = None, source_detection: str | None = None, time_of_emission: datetime | None = None, triage_event: str | None = None, user_created: bool | None = None, verification_status: str | None = None, inference_store_detection_id: str | None = None, model_id: str | None = None)[source]
Bases:
BaseModelWithValidators- bbox: str | None
- chariot_request: str | None
- chip: str | None
- classification: str | None
- classmethod convert_to_dict(v)[source]
Watchbox api appears to return base64 encoded json strings for the detection_metadata. This makes them readable.
- created_by: str | None
- dataset: str | None
- date_created: datetime | None
- date_updated: datetime | None
- deleted_at: datetime | None
- detection_metadata: str | dict | None
- id: str | None
- inference_id: str | None
- inference_store_detection_id: str | None
- lat: float | int | None
- lon: float | int | None
- model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_id: str | None
- reviewed_by: str | None
- score: float | int | None
- source_detection: str | None
- time_of_emission: datetime | None
- triage_event: str | None
- user_created: bool | None
- verification_status: str | None
- class chariot.watchbox.models.WatchboxModel(*, id: str, score_threshold: float | None = None)[source]
Bases:
BaseModelWithValidators- id: str
- model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- score_threshold: float | None
- class chariot.watchbox.models.WatchboxStatistics(*, triage_event_id: str | None = None, var_date: datetime | None = None, counts: Dict[str, int] | None = None)[source]
Bases:
BaseModelWithValidators- counts: Dict[str, int] | None
- model_config: ClassVar[ConfigDict] = {'protected_namespaces': ()}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- triage_event_id: str | None
- var_date: datetime | None