Integrace RichPear Home

DOODS - Dedicated Open Object Detection Service

DOODS zpracovává snímky z kamery a detekuje objekty přes lokálně provozovanou službu Dedicated Open Object Detection Service.

Doména
doods
Kategorie
Zpracování obrazu
Komunikace
lokální dotazování
Nastavení
ruční konfigurace v souboru
Vyžaduje
běžící DOODS server a kameru
UI

Ukázka v RichPear Home

Snímky ukazují, kde integraci v českém rozhraní vyhledat a jak vypadá první konkrétní krok nastavení.

DOODS je v katalogu dohledatelný, ale nastavuje se ručně.
RichPear Home u DOODS ukáže, že konfigurace patří do souboru.
01

Co integrace přidá

Výsledkem je entita zpracování obrazu. Její stav odpovídá počtu rozpoznaných objektů, atribut summary obsahuje přehled kategorií a atribut matches obsahuje skóre spolehlivosti a bounding box.

DOODS služba musí běžet předem, například jako samostatný kontejner nebo aplikace v lokální infrastruktuře.

02

Příprava DOODS

Připravte URL DOODS serveru, název detektoru a kamerovou entitu, ze které se budou brát snímky. Pokud používáte autentizační klíč, uložte ho jako tajnou hodnotu.

Detekci objektů spouštějte nad kamerami, kde máte oprávnění obraz zpracovávat. U venkovních kamer nastavte oblasti tak, aby nevyhodnocovaly zbytečné části obrazu.

03

Nastavení v konfiguraci

Do konfigurace přidejte platformu doods pod image_processing a restartujte RichPear Home.

image_processing:
  - platform: doods
    url: "http://192.168.1.20:8080"
    detector: default
    source:
      - entity_id: camera.vchod

04

Detekční pravidla

Volbou confidence nastavíte minimální jistotu rozpoznání. Přes area lze omezit část obrazu; souřadnice se zadávají jako poměr od 0 do 1.

U jednotlivých labels lze definovat samostatnou jistotu a oblast. Volba covers určuje, zda musí být objekt celý uvnitř oblasti.

05

Ukládání výstupů

Parametr file_out uloží zpracované snímky s vyznačenými objekty. Do šablony lze použít proměnnou camera_entity.

file_out:
  - "/tmp/{{ camera_entity.split('.')[1] }}_latest.jpg"
  - "/tmp/{{ camera_entity.split('.')[1] }}_{{ now().strftime('%Y%m%d_%H%M%S') }}.jpg"

06

Optimalizace výkonu

Detekce obrazu může být výpočetně náročná. Nastavte rozumný scan_interval, používejte oblasti zájmu a neskenujte vysoké rozlišení častěji, než potřebujete.

07

Řešení problémů

Pokud entita nevrací výsledky, ověřte dostupnost DOODS URL, název detektoru, kamerovou entitu a log služby. Při falešných poplaších zvyšte confidence nebo zúžte detekční oblast.