Rozpoznávání SPZ API (ALPR / ANPR) Online
Ve srovnání s V1: nové parametry regions, camera_id, timestamp, config, threshold, mode
Přečte registrační značky na fotografii vozidla. Odešlete POST s jedním obrázkem (JPEG, PNG, WebP, BMP nebo TIFF, max. 8 MB) jako tělo JSON s image_url nebo image_base64, jako nahrání multipart/form-data v poli "image", nebo jako surové bajty s hlavičkou Content-Type image/*. Každá nalezená značka se vrátí s textem, skóre 0-1, alternativními čteními, rámečkem značky v pixelech a skóre detekce. Engine je náš vlastní detektor a čtečka značek, vyladěný na evropské nákladní automobily a autobusy. Obrázky se zpracovávají v paměti a nikdy se neukládají. image_url musí být veřejná adresa http(s); soukromé a interní adresy i přesměrování na ně jsou odmítnuty a stahování se zastaví po 10 sekundách.
POST https://nakordoni.eu/api/v4/data/plate-recognition
— třída kvóty: heavy
| Parametr | Popis |
|---|---|
image_url | (tělo JSON) Veřejná URL obrázku http(s). Max. 8 MB, max. 3 přesměrování, limit stahování 10 s. |
image_base64 | (tělo JSON) Obrázek ve formátu base64 (povolen je i prefix data:image/...;base64,). Odešlete image_url nebo image_base64, ne obojí. |
regions | Volitelné. Země, které očekáváte, jako kódy ISO 3166-1 alpha-2: pole JSON ["PL","DE"] nebo řetězec oddělený čárkami "PL,DE" (pole multipart nebo parametr dotazu). Nejvýše 10. Odhad regionu a pořadí čtení upřednostňují tyto země: když nejlepší čtení neodpovídá formátu žádné uvedené země, ale jiný kandidát se skóre nižším nejvýše o 0.15 odpovídá, stane se tento kandidát SPZ. SPZ, která neodpovídá žádné uvedené zemi, si ponechá běžnou odpověď. |
camera_id | Volitelné. ID vaší kamery nebo brány, nejvýše 128 znaků. Vráceno beze změny v data.camera_id. Neukládá se nad rámec běžného logu požadavků. |
timestamp | Volitelné. Čas pořízení ve vašem vlastním formátu (například 2026-10-27T14:05:00Z), nejvýše 64 znaků. Vráceno beze změny v data.timestamp. Neukládá se nad rámec běžného logu požadavků. |
config | Volitelné. Objekt JSON {"threshold": 0-1, "mode": "fast"|"full"}. Ve formuláři multipart nebo v řetězci dotazu ho pošlete jako řetězec JSON, nebo použijte pole threshold a mode. |
threshold | Volitelné, stejné jako config.threshold. Výsledky se skóre pod touto hodnotou (0-1) se vynechají. Pokud nezbude žádný, odpověď je 404 no_plate_detected. |
mode | Volitelné, stejné jako config.mode. full (výchozí) spouští rozpoznávání SPZ a detekci vozidla. fast přeskočí detekci vozidla pro rychlost podobnou v2: region se stále vyplňuje, vehicle je null. |
Pole odpovědi — uvnitř objektu data v obálce odpovědi. [] označuje seznam, takže data.items[].name je pole name každého prvku. Pole bývá null, chybí nebo je prázdný seznam, když pro něj nemáme hodnotu — zástupný údaj nedoplňujeme.
| Pole | Popis |
|---|---|
data.success | true, když byla přečtena alespoň jedna značka; data.message uvádí kolik. |
data.processing_time | Čas strávený na požadavku v milisekundách (stažení, rozpoznávání SPZ a detekce vozidla). v4 trvá déle než v2 kvůli detekci vozidla, obvykle 0.5-1.5 s na obrázek. S config.mode=fast detekce vozidla neprobíhá a čas je blízký v2. |
data.camera_id | camera_id, které jste poslali, beze změny. Přítomno, jen pokud jste ho poslali. |
data.timestamp | timestamp, který jste poslali, beze změny (řetězec zůstane řetězcem, číslo číslem). Přítomen, jen pokud jste ho poslali. |
data.results[] | Jeden záznam na značku, nejprve s nejvyšším skóre detekce. |
data.results[].plate | Text značky, velkými písmeny, pouze písmena A-Z a číslice (bez mezer a pomlček). |
data.results[].score | Jistota čtení 0-1 (průměr jistot jednotlivých znaků). |
data.results[].candidates[] | Až 5 čtení {plate, score}, nejlepší první; první z nich je značka. |
data.results[].region | {code, score}: code je země značky podle ISO 3166-1 alpha-2 (například UA, PL, RO), určená z formátu značky. score 0-1 je jistota čtení vynásobená mírou specifičnosti formátu; pokud stejný formát používá více zemí (například LT, MD a HU sdílejí ABC123), skóre se mezi ně rozdělí a je nízké. null, když text neodpovídá žádnému známému formátu. Podporováno: UA, BG, BY, RO, ES, CZ, BE, EE, HU, TR, PL, SK, LV, LT, MD, IT, FR, RS, DE. |
data.results[].box | Poloha značky v pixelech: xmin, ymin, xmax, ymax. |
data.results[].dscore | Jistota detekce značky 0-1. |
data.results[].vehicle | {type, score, box}: vozidlo, které nese SPZ. type je car, bus, truck nebo motorcycle; score je jistota detekce 0-1; box je poloha vozidla v pixelech (xmin, ymin, xmax, ymax). Autokary viděné zepředu a minibusy či dodávky mohou být typu truck (detektor nemá třídu dodávka). null, když žádné detekované vozidlo SPZ neobsahuje, a vždy null s config.mode=fast. |
error.code | 400: image_required, bad_json, bad_base64, one_image_only, bad_image_url, image_url_not_allowed, image_url_fetch_failed, image_url_timeout, invalid_image, unsupported_image_type, unsupported_content_type, upload_failed, bad_regions, bad_camera_id, bad_timestamp, bad_config, bad_threshold, bad_mode. 404: no_plate_detected (také když config.threshold nenechá žádný výsledek). 413: payload_too_large. 500: engine_error. |
curl -X POST "https://nakordoni.eu/api/v4/data/plate-recognition" \
-H "Authorization: Bearer NKD-DEV-XXXX-XXXX-XXXX" \
-H "Content-Type: application/json" \
-d '{
"image_url": "https://nakordoni.eu/img/developers/plate-recognition-example-bus.jpg",
"regions": [
"UA"
],
"camera_id": "depot-gate-1",
"timestamp": "2026-10-27T14:05:00Z",
"config": {
"threshold": 0.8
}
}'
Rozpoznávání SPZ (ANPR / ALPR) pro evropská vozidla
Plate Image Recognition API je služba pro rozpoznávání SPZ (LPR): pošlete fotku a dostanete text registrační značky jako JSON. Je to náš vlastní engine ANPR / ALPR, vyladěný na nákladních vozech a autobusech z EU na hraničních přechodech a v autobusových depech, a čte také značky osobních aut a motocyklů.
Verze v4 přidává zemi SPZ a typ vozidla (car, bus, truck nebo motorcycle). Přijímá také volitelné možnosti požadavku: regions, aby se výsledek přiklonil k očekávaným zemím; camera_id a timestamp, které se vrátí v odpovědi; práh skóre; a režim fast.
GDPR už v návrhu: API je hostováno v EU a každý obrázek se zpracovává jen v paměti a nikdy se neukládá. Žádná externí služba vidění nevidí vaše obrázky.
Integrace: Home Assistant
Naše open-source integrace Home Assistant (licence MIT, instalovatelná přes HACS) čte SPZ z vašich kamer Home Assistant. Pro každou SPZ vám dá senzor a událost se zemí SPZ a typem vozidla. Podporuje Frigate: při události vozidla přečte snímek a zapíše SPZ zpět do Frigate jako podštítek. Přihlášení používá OAuth, takže každý uživatel dostane vlastní bezplatný klíč.
Aktualizováno