Add image_processing setup type hints (#63290)
Co-authored-by: epenet <epenet@users.noreply.github.com>
This commit is contained in:
parent
061ce0c187
commit
ca366e6f87
13 changed files with 143 additions and 26 deletions
|
@ -1,4 +1,6 @@
|
||||||
"""Component that will help set the Dlib face detect processing."""
|
"""Component that will help set the Dlib face detect processing."""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
import io
|
import io
|
||||||
|
|
||||||
import face_recognition # pylint: disable=import-error
|
import face_recognition # pylint: disable=import-error
|
||||||
|
@ -10,7 +12,9 @@ from homeassistant.components.image_processing import (
|
||||||
ImageProcessingFaceEntity,
|
ImageProcessingFaceEntity,
|
||||||
)
|
)
|
||||||
from homeassistant.const import ATTR_LOCATION
|
from homeassistant.const import ATTR_LOCATION
|
||||||
from homeassistant.core import split_entity_id
|
from homeassistant.core import HomeAssistant, split_entity_id
|
||||||
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
|
||||||
|
|
||||||
# pylint: disable=unused-import
|
# pylint: disable=unused-import
|
||||||
from homeassistant.components.image_processing import ( # noqa: F401, isort:skip
|
from homeassistant.components.image_processing import ( # noqa: F401, isort:skip
|
||||||
|
@ -18,7 +22,12 @@ from homeassistant.components.image_processing import ( # noqa: F401, isort:ski
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def setup_platform(hass, config, add_entities, discovery_info=None):
|
def setup_platform(
|
||||||
|
hass: HomeAssistant,
|
||||||
|
config: ConfigType,
|
||||||
|
add_entities: AddEntitiesCallback,
|
||||||
|
discovery_info: DiscoveryInfoType | None = None,
|
||||||
|
) -> None:
|
||||||
"""Set up the Dlib Face detection platform."""
|
"""Set up the Dlib Face detection platform."""
|
||||||
entities = []
|
entities = []
|
||||||
for camera in config[CONF_SOURCE]:
|
for camera in config[CONF_SOURCE]:
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
"""Component that will help set the Dlib face detect processing."""
|
"""Component that will help set the Dlib face detect processing."""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
import io
|
import io
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
|
@ -15,8 +17,10 @@ from homeassistant.components.image_processing import (
|
||||||
ImageProcessingFaceEntity,
|
ImageProcessingFaceEntity,
|
||||||
)
|
)
|
||||||
from homeassistant.const import ATTR_NAME
|
from homeassistant.const import ATTR_NAME
|
||||||
from homeassistant.core import split_entity_id
|
from homeassistant.core import HomeAssistant, split_entity_id
|
||||||
import homeassistant.helpers.config_validation as cv
|
import homeassistant.helpers.config_validation as cv
|
||||||
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
|
||||||
|
|
||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
@ -30,7 +34,12 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def setup_platform(hass, config, add_entities, discovery_info=None):
|
def setup_platform(
|
||||||
|
hass: HomeAssistant,
|
||||||
|
config: ConfigType,
|
||||||
|
add_entities: AddEntitiesCallback,
|
||||||
|
discovery_info: DiscoveryInfoType | None = None,
|
||||||
|
) -> None:
|
||||||
"""Set up the Dlib Face detection platform."""
|
"""Set up the Dlib Face detection platform."""
|
||||||
entities = []
|
entities = []
|
||||||
for camera in config[CONF_SOURCE]:
|
for camera in config[CONF_SOURCE]:
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
"""Support for the DOODS service."""
|
"""Support for the DOODS service."""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
import io
|
import io
|
||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
|
@ -17,9 +19,11 @@ from homeassistant.components.image_processing import (
|
||||||
ImageProcessingEntity,
|
ImageProcessingEntity,
|
||||||
)
|
)
|
||||||
from homeassistant.const import CONF_COVERS, CONF_TIMEOUT, CONF_URL
|
from homeassistant.const import CONF_COVERS, CONF_TIMEOUT, CONF_URL
|
||||||
from homeassistant.core import split_entity_id
|
from homeassistant.core import HomeAssistant, split_entity_id
|
||||||
from homeassistant.helpers import template
|
from homeassistant.helpers import template
|
||||||
import homeassistant.helpers.config_validation as cv
|
import homeassistant.helpers.config_validation as cv
|
||||||
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
|
||||||
from homeassistant.util.pil import draw_box
|
from homeassistant.util.pil import draw_box
|
||||||
|
|
||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
|
@ -73,7 +77,12 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def setup_platform(hass, config, add_entities, discovery_info=None):
|
def setup_platform(
|
||||||
|
hass: HomeAssistant,
|
||||||
|
config: ConfigType,
|
||||||
|
add_entities: AddEntitiesCallback,
|
||||||
|
discovery_info: DiscoveryInfoType | None = None,
|
||||||
|
) -> None:
|
||||||
"""Set up the Doods client."""
|
"""Set up the Doods client."""
|
||||||
url = config[CONF_URL]
|
url = config[CONF_URL]
|
||||||
auth_key = config[CONF_AUTH_KEY]
|
auth_key = config[CONF_AUTH_KEY]
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
"""Component for facial detection and identification via facebox."""
|
"""Component for facial detection and identification via facebox."""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
import base64
|
import base64
|
||||||
from http import HTTPStatus
|
from http import HTTPStatus
|
||||||
import logging
|
import logging
|
||||||
|
@ -23,8 +25,10 @@ from homeassistant.const import (
|
||||||
CONF_PORT,
|
CONF_PORT,
|
||||||
CONF_USERNAME,
|
CONF_USERNAME,
|
||||||
)
|
)
|
||||||
from homeassistant.core import ServiceCall, split_entity_id
|
from homeassistant.core import HomeAssistant, ServiceCall, split_entity_id
|
||||||
import homeassistant.helpers.config_validation as cv
|
import homeassistant.helpers.config_validation as cv
|
||||||
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
|
||||||
|
|
||||||
from .const import DOMAIN, SERVICE_TEACH_FACE
|
from .const import DOMAIN, SERVICE_TEACH_FACE
|
||||||
|
|
||||||
|
@ -158,7 +162,12 @@ def valid_file_path(file_path):
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
|
||||||
def setup_platform(hass, config, add_entities, discovery_info=None):
|
def setup_platform(
|
||||||
|
hass: HomeAssistant,
|
||||||
|
config: ConfigType,
|
||||||
|
add_entities: AddEntitiesCallback,
|
||||||
|
discovery_info: DiscoveryInfoType | None = None,
|
||||||
|
) -> None:
|
||||||
"""Set up the classifier."""
|
"""Set up the classifier."""
|
||||||
if DATA_FACEBOX not in hass.data:
|
if DATA_FACEBOX not in hass.data:
|
||||||
hass.data[DATA_FACEBOX] = []
|
hass.data[DATA_FACEBOX] = []
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
"""Component that will help set the Microsoft face detect processing."""
|
"""Component that will help set the Microsoft face detect processing."""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
import voluptuous as vol
|
import voluptuous as vol
|
||||||
|
@ -14,9 +16,11 @@ from homeassistant.components.image_processing import (
|
||||||
ImageProcessingFaceEntity,
|
ImageProcessingFaceEntity,
|
||||||
)
|
)
|
||||||
from homeassistant.components.microsoft_face import DATA_MICROSOFT_FACE
|
from homeassistant.components.microsoft_face import DATA_MICROSOFT_FACE
|
||||||
from homeassistant.core import split_entity_id
|
from homeassistant.core import HomeAssistant, split_entity_id
|
||||||
from homeassistant.exceptions import HomeAssistantError
|
from homeassistant.exceptions import HomeAssistantError
|
||||||
import homeassistant.helpers.config_validation as cv
|
import homeassistant.helpers.config_validation as cv
|
||||||
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
|
||||||
|
|
||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
@ -43,7 +47,12 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None):
|
async def async_setup_platform(
|
||||||
|
hass: HomeAssistant,
|
||||||
|
config: ConfigType,
|
||||||
|
async_add_entities: AddEntitiesCallback,
|
||||||
|
discovery_info: DiscoveryInfoType | None = None,
|
||||||
|
) -> None:
|
||||||
"""Set up the Microsoft Face detection platform."""
|
"""Set up the Microsoft Face detection platform."""
|
||||||
api = hass.data[DATA_MICROSOFT_FACE]
|
api = hass.data[DATA_MICROSOFT_FACE]
|
||||||
attributes = config[CONF_ATTRIBUTES]
|
attributes = config[CONF_ATTRIBUTES]
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
"""Component that will help set the Microsoft face for verify processing."""
|
"""Component that will help set the Microsoft face for verify processing."""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
import voluptuous as vol
|
import voluptuous as vol
|
||||||
|
@ -14,9 +16,11 @@ from homeassistant.components.image_processing import (
|
||||||
)
|
)
|
||||||
from homeassistant.components.microsoft_face import DATA_MICROSOFT_FACE
|
from homeassistant.components.microsoft_face import DATA_MICROSOFT_FACE
|
||||||
from homeassistant.const import ATTR_NAME
|
from homeassistant.const import ATTR_NAME
|
||||||
from homeassistant.core import split_entity_id
|
from homeassistant.core import HomeAssistant, split_entity_id
|
||||||
from homeassistant.exceptions import HomeAssistantError
|
from homeassistant.exceptions import HomeAssistantError
|
||||||
import homeassistant.helpers.config_validation as cv
|
import homeassistant.helpers.config_validation as cv
|
||||||
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
|
||||||
|
|
||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
@ -25,7 +29,12 @@ CONF_GROUP = "group"
|
||||||
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({vol.Required(CONF_GROUP): cv.slugify})
|
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({vol.Required(CONF_GROUP): cv.slugify})
|
||||||
|
|
||||||
|
|
||||||
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None):
|
async def async_setup_platform(
|
||||||
|
hass: HomeAssistant,
|
||||||
|
config: ConfigType,
|
||||||
|
async_add_entities: AddEntitiesCallback,
|
||||||
|
discovery_info: DiscoveryInfoType | None = None,
|
||||||
|
) -> None:
|
||||||
"""Set up the Microsoft Face identify platform."""
|
"""Set up the Microsoft Face identify platform."""
|
||||||
api = hass.data[DATA_MICROSOFT_FACE]
|
api = hass.data[DATA_MICROSOFT_FACE]
|
||||||
face_group = config[CONF_GROUP]
|
face_group = config[CONF_GROUP]
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
"""Component that will help set the OpenALPR cloud for ALPR processing."""
|
"""Component that will help set the OpenALPR cloud for ALPR processing."""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
import asyncio
|
import asyncio
|
||||||
from base64 import b64encode
|
from base64 import b64encode
|
||||||
from http import HTTPStatus
|
from http import HTTPStatus
|
||||||
|
@ -19,9 +21,11 @@ from homeassistant.components.openalpr_local.image_processing import (
|
||||||
ImageProcessingAlprEntity,
|
ImageProcessingAlprEntity,
|
||||||
)
|
)
|
||||||
from homeassistant.const import CONF_API_KEY, CONF_REGION
|
from homeassistant.const import CONF_API_KEY, CONF_REGION
|
||||||
from homeassistant.core import split_entity_id
|
from homeassistant.core import HomeAssistant, split_entity_id
|
||||||
from homeassistant.helpers.aiohttp_client import async_get_clientsession
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession
|
||||||
import homeassistant.helpers.config_validation as cv
|
import homeassistant.helpers.config_validation as cv
|
||||||
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
|
||||||
|
|
||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
@ -50,7 +54,12 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None):
|
async def async_setup_platform(
|
||||||
|
hass: HomeAssistant,
|
||||||
|
config: ConfigType,
|
||||||
|
async_add_entities: AddEntitiesCallback,
|
||||||
|
discovery_info: DiscoveryInfoType | None = None,
|
||||||
|
) -> None:
|
||||||
"""Set up the OpenALPR cloud API platform."""
|
"""Set up the OpenALPR cloud API platform."""
|
||||||
confidence = config[CONF_CONFIDENCE]
|
confidence = config[CONF_CONFIDENCE]
|
||||||
params = {
|
params = {
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
"""Component that will help set the OpenALPR local for ALPR processing."""
|
"""Component that will help set the OpenALPR local for ALPR processing."""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
import asyncio
|
import asyncio
|
||||||
import io
|
import io
|
||||||
import re
|
import re
|
||||||
|
@ -16,8 +18,10 @@ from homeassistant.components.image_processing import (
|
||||||
ImageProcessingEntity,
|
ImageProcessingEntity,
|
||||||
)
|
)
|
||||||
from homeassistant.const import CONF_REGION
|
from homeassistant.const import CONF_REGION
|
||||||
from homeassistant.core import callback, split_entity_id
|
from homeassistant.core import HomeAssistant, callback, split_entity_id
|
||||||
import homeassistant.helpers.config_validation as cv
|
import homeassistant.helpers.config_validation as cv
|
||||||
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
|
||||||
from homeassistant.util.async_ import run_callback_threadsafe
|
from homeassistant.util.async_ import run_callback_threadsafe
|
||||||
|
|
||||||
RE_ALPR_PLATE = re.compile(r"^plate\d*:")
|
RE_ALPR_PLATE = re.compile(r"^plate\d*:")
|
||||||
|
@ -56,7 +60,12 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None):
|
async def async_setup_platform(
|
||||||
|
hass: HomeAssistant,
|
||||||
|
config: ConfigType,
|
||||||
|
async_add_entities: AddEntitiesCallback,
|
||||||
|
discovery_info: DiscoveryInfoType | None = None,
|
||||||
|
) -> None:
|
||||||
"""Set up the OpenALPR local platform."""
|
"""Set up the OpenALPR local platform."""
|
||||||
command = [config[CONF_ALPR_BIN], "-c", config[CONF_REGION], "-"]
|
command = [config[CONF_ALPR_BIN], "-c", config[CONF_REGION], "-"]
|
||||||
confidence = config[CONF_CONFIDENCE]
|
confidence = config[CONF_CONFIDENCE]
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
"""Support for OpenCV classification on images."""
|
"""Support for OpenCV classification on images."""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
from datetime import timedelta
|
from datetime import timedelta
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
|
@ -13,8 +15,10 @@ from homeassistant.components.image_processing import (
|
||||||
PLATFORM_SCHEMA,
|
PLATFORM_SCHEMA,
|
||||||
ImageProcessingEntity,
|
ImageProcessingEntity,
|
||||||
)
|
)
|
||||||
from homeassistant.core import split_entity_id
|
from homeassistant.core import HomeAssistant, split_entity_id
|
||||||
import homeassistant.helpers.config_validation as cv
|
import homeassistant.helpers.config_validation as cv
|
||||||
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
|
||||||
|
|
||||||
try:
|
try:
|
||||||
# Verify that the OpenCV python package is pre-installed
|
# Verify that the OpenCV python package is pre-installed
|
||||||
|
@ -92,7 +96,12 @@ def _get_default_classifier(dest_path):
|
||||||
fil.write(chunk)
|
fil.write(chunk)
|
||||||
|
|
||||||
|
|
||||||
def setup_platform(hass, config, add_entities, discovery_info=None):
|
def setup_platform(
|
||||||
|
hass: HomeAssistant,
|
||||||
|
config: ConfigType,
|
||||||
|
add_entities: AddEntitiesCallback,
|
||||||
|
discovery_info: DiscoveryInfoType | None = None,
|
||||||
|
) -> None:
|
||||||
"""Set up the OpenCV image processing platform."""
|
"""Set up the OpenCV image processing platform."""
|
||||||
if not CV2_IMPORTED:
|
if not CV2_IMPORTED:
|
||||||
_LOGGER.error(
|
_LOGGER.error(
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
"""Support for the QR code image processing."""
|
"""Support for the QR code image processing."""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
import io
|
import io
|
||||||
|
|
||||||
from PIL import Image
|
from PIL import Image
|
||||||
|
@ -10,10 +12,17 @@ from homeassistant.components.image_processing import (
|
||||||
CONF_SOURCE,
|
CONF_SOURCE,
|
||||||
ImageProcessingEntity,
|
ImageProcessingEntity,
|
||||||
)
|
)
|
||||||
from homeassistant.core import split_entity_id
|
from homeassistant.core import HomeAssistant, split_entity_id
|
||||||
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
|
||||||
|
|
||||||
|
|
||||||
def setup_platform(hass, config, add_entities, discovery_info=None):
|
def setup_platform(
|
||||||
|
hass: HomeAssistant,
|
||||||
|
config: ConfigType,
|
||||||
|
add_entities: AddEntitiesCallback,
|
||||||
|
discovery_info: DiscoveryInfoType | None = None,
|
||||||
|
) -> None:
|
||||||
"""Set up the QR code image processing platform."""
|
"""Set up the QR code image processing platform."""
|
||||||
# pylint: disable=unused-argument
|
# pylint: disable=unused-argument
|
||||||
entities = []
|
entities = []
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
"""Optical character recognition processing of seven segments displays."""
|
"""Optical character recognition processing of seven segments displays."""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
import io
|
import io
|
||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
|
@ -14,8 +16,10 @@ from homeassistant.components.image_processing import (
|
||||||
PLATFORM_SCHEMA,
|
PLATFORM_SCHEMA,
|
||||||
ImageProcessingEntity,
|
ImageProcessingEntity,
|
||||||
)
|
)
|
||||||
from homeassistant.core import split_entity_id
|
from homeassistant.core import HomeAssistant, split_entity_id
|
||||||
import homeassistant.helpers.config_validation as cv
|
import homeassistant.helpers.config_validation as cv
|
||||||
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
|
||||||
|
|
||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
@ -46,7 +50,12 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None):
|
async def async_setup_platform(
|
||||||
|
hass: HomeAssistant,
|
||||||
|
config: ConfigType,
|
||||||
|
async_add_entities: AddEntitiesCallback,
|
||||||
|
discovery_info: DiscoveryInfoType | None = None,
|
||||||
|
) -> None:
|
||||||
"""Set up the Seven segments OCR platform."""
|
"""Set up the Seven segments OCR platform."""
|
||||||
entities = []
|
entities = []
|
||||||
for camera in config[CONF_SOURCE]:
|
for camera in config[CONF_SOURCE]:
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
"""Person detection using Sighthound cloud service."""
|
"""Person detection using Sighthound cloud service."""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
import io
|
import io
|
||||||
import logging
|
import logging
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
@ -15,8 +17,10 @@ from homeassistant.components.image_processing import (
|
||||||
ImageProcessingEntity,
|
ImageProcessingEntity,
|
||||||
)
|
)
|
||||||
from homeassistant.const import ATTR_ENTITY_ID, CONF_API_KEY
|
from homeassistant.const import ATTR_ENTITY_ID, CONF_API_KEY
|
||||||
from homeassistant.core import split_entity_id
|
from homeassistant.core import HomeAssistant, split_entity_id
|
||||||
import homeassistant.helpers.config_validation as cv
|
import homeassistant.helpers.config_validation as cv
|
||||||
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
|
||||||
import homeassistant.util.dt as dt_util
|
import homeassistant.util.dt as dt_util
|
||||||
from homeassistant.util.pil import draw_box
|
from homeassistant.util.pil import draw_box
|
||||||
|
|
||||||
|
@ -43,7 +47,12 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def setup_platform(hass, config, add_entities, discovery_info=None):
|
def setup_platform(
|
||||||
|
hass: HomeAssistant,
|
||||||
|
config: ConfigType,
|
||||||
|
add_entities: AddEntitiesCallback,
|
||||||
|
discovery_info: DiscoveryInfoType | None = None,
|
||||||
|
) -> None:
|
||||||
"""Set up the platform."""
|
"""Set up the platform."""
|
||||||
# Validate credentials by processing image.
|
# Validate credentials by processing image.
|
||||||
api_key = config[CONF_API_KEY]
|
api_key = config[CONF_API_KEY]
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
"""Support for performing TensorFlow classification on images."""
|
"""Support for performing TensorFlow classification on images."""
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
import io
|
import io
|
||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
|
@ -19,9 +21,11 @@ from homeassistant.components.image_processing import (
|
||||||
ImageProcessingEntity,
|
ImageProcessingEntity,
|
||||||
)
|
)
|
||||||
from homeassistant.const import EVENT_HOMEASSISTANT_START
|
from homeassistant.const import EVENT_HOMEASSISTANT_START
|
||||||
from homeassistant.core import split_entity_id
|
from homeassistant.core import HomeAssistant, split_entity_id
|
||||||
from homeassistant.helpers import template
|
from homeassistant.helpers import template
|
||||||
import homeassistant.helpers.config_validation as cv
|
import homeassistant.helpers.config_validation as cv
|
||||||
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||||
|
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
|
||||||
from homeassistant.util.pil import draw_box
|
from homeassistant.util.pil import draw_box
|
||||||
|
|
||||||
os.environ["TF_CPP_MIN_LOG_LEVEL"] = "2"
|
os.environ["TF_CPP_MIN_LOG_LEVEL"] = "2"
|
||||||
|
@ -96,7 +100,12 @@ def get_model_detection_function(model):
|
||||||
return detect_fn
|
return detect_fn
|
||||||
|
|
||||||
|
|
||||||
def setup_platform(hass, config, add_entities, discovery_info=None):
|
def setup_platform(
|
||||||
|
hass: HomeAssistant,
|
||||||
|
config: ConfigType,
|
||||||
|
add_entities: AddEntitiesCallback,
|
||||||
|
discovery_info: DiscoveryInfoType | None = None,
|
||||||
|
) -> None:
|
||||||
"""Set up the TensorFlow image processing platform."""
|
"""Set up the TensorFlow image processing platform."""
|
||||||
model_config = config[CONF_MODEL]
|
model_config = config[CONF_MODEL]
|
||||||
model_dir = model_config.get(CONF_MODEL_DIR) or hass.config.path("tensorflow")
|
model_dir = model_config.get(CONF_MODEL_DIR) or hass.config.path("tensorflow")
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue