Davlat raqami plastinkasini tanish API (ALPR / ANPR) Online
V1 bilan solishtirganda: yangi parametrlar regions, camera_id, timestamp, config, threshold, mode
Transport vositasi fotosuratidagi davlat raqamlarini o'qiydi. Bitta tasvirni (JPEG, PNG, WebP, BMP yoki TIFF, maks. 8 MB) image_url yoki image_base64 bilan JSON tanasi sifatida, "image" maydonida multipart/form-data yuklash sifatida yoki image/* Content-Type bilan xom baytlar sifatida POST qiling. Topilgan har bir raqam matn, 0-1 ball, muqobil o'qishlar, piksellarda raqam ramkasi va aniqlash bali bilan qaytariladi. Dvigatel — Yevropa yuk mashinalari va avtobuslari uchun sozlangan o'zimizning raqam detektori va o'quvchisi. Tasvirlar xotirada qayta ishlanadi va hech qachon saqlanmaydi. image_url ommaviy http(s) manzil bo'lishi kerak; shaxsiy va ichki manzillar hamda ularga yo'naltirishlar rad etiladi, yuklab olish 10 soniyadan so'ng to'xtatiladi.
POST https://nakordoni.eu/api/v4/data/plate-recognition
— kvota sinfi: heavy
| Parametr | Tavsif |
|---|---|
image_url | (JSON tanasi) Tasvirning ommaviy http(s) URL manzili. Maks. 8 MB, maks. 3 ta yo'naltirish, yuklab olish chegarasi 10 s. |
image_base64 | (JSON tanasi) Base64 shaklidagi tasvir (data:image/...;base64, prefiksiga ruxsat beriladi). image_url yoki image_base64 yuboring, ikkalasini emas. |
regions | Ixtiyoriy. Kutayotgan davlatlaringiz, ISO 3166-1 alpha-2 kodlari sifatida: JSON massiv ["PL","DE"] yoki vergul bilan ajratilgan satr "PL,DE" (multipart maydon yoki query parametr). 10 tagacha. Hudud taxmini va o'qish tartibi shu davlatlar tomon og'adi: eng yaxshi o'qish ro'yxatdagi birorta davlat formatiga mos kelmasa, lekin bahosi ko'pi bilan 0,15 past bo'lgan boshqa nomzod mos kelsa, shu nomzod plastinka bo'ladi. Ro'yxatdagi hech bir davlatga mos kelmaydigan plastinka odatiy javobini saqlab qoladi. |
camera_id | Ixtiyoriy. Kamera yoki darvozangiz ID si, 128 belgigacha. data.camera_id da o'zgarishsiz qaytariladi. Oddiy so'rovlar jurnalidan tashqarida saqlanmaydi. |
timestamp | Ixtiyoriy. Suratga olish vaqti o'zingizning formatingizda (masalan, 2026-10-27T14:05:00Z), 64 belgigacha. data.timestamp da o'zgarishsiz qaytariladi. Oddiy so'rovlar jurnalidan tashqarida saqlanmaydi. |
config | Ixtiyoriy. JSON obyekt {"threshold": 0-1, "mode": "fast"|"full"}. Multipart formada yoki query satrida uni JSON satr sifatida yuboring yoki threshold va mode maydonlaridan foydalaning. |
threshold | Ixtiyoriy, config.threshold bilan bir xil. Bahosi (score) shu qiymatdan (0-1) past natijalar chiqarib tashlanadi. Hech biri qolmasa, javob 404 no_plate_detected bo'ladi. |
mode | Ixtiyoriy, config.mode bilan bir xil. full (standart) plastinkani tanish va transport vositasini aniqlashni bajaradi. fast v2 ga yaqin tezlik uchun transport vositasini aniqlashni o'tkazib yuboradi: region baribir to'ldiriladi, vehicle esa null. |
Javob maydonlari — javob konvertidagi data obyekti ichida. [] ro‘yxatni bildiradi, ya’ni data.items[].name har bir elementning name maydonidir. Qiymatimiz bo‘lmagan maydon null bo‘ladi, umuman bo‘lmaydi yoki bo‘sh ro‘yxat qaytadi — o‘rniga hech qachon soxta qiymat qo‘ymaymiz.
| Maydon | Tavsif |
|---|---|
data.success | kamida bitta raqam o'qilganda true; data.message nechtaligini bildiradi. |
data.processing_time | So'rovga sarflangan vaqt millisekundlarda (yuklab olish, plastinkani tanish va transport vositasini aniqlash). v4 transport vositasini aniqlash tufayli v2 dan uzoqroq davom etadi, odatda har bir rasm uchun 0,5-1,5 s. config.mode=fast bilan transport vositasi aniqlanmaydi va vaqt v2 ga yaqin bo'ladi. |
data.camera_id | Siz yuborgan camera_id, o'zgarishsiz. Faqat siz yuborgan bo'lsangiz mavjud bo'ladi. |
data.timestamp | Siz yuborgan timestamp, o'zgarishsiz (satr satrligicha, raqam raqamligicha qoladi). Faqat siz yuborgan bo'lsangiz mavjud bo'ladi. |
data.results[] | Har bir raqam uchun bitta yozuv, eng yuqori aniqlash bali birinchi. |
data.results[].plate | Raqam matni, bosh harflarda, faqat A-Z harflari va raqamlar (bo'sh joy va chiziqchalarsiz). |
data.results[].score | O'qish ishonchliligi 0-1 (har bir belgi ishonchliligining o'rtachasi). |
data.results[].candidates[] | Eng ko'pi bilan 5 ta o'qish {plate, score}, eng yaxshisi birinchi; birinchisi raqamning o'zi. |
data.results[].region | {code, score}: code — raqamning ISO 3166-1 alpha-2 davlati (masalan, UA, PL, RO), raqam formatidan o'qiladi. score 0-1 — o'qish ishonchliligining format qanchalik o'ziga xosligiga ko'paytmasi; bir xil format bir nechta davlatda ishlatilsa (masalan, LT, MD va HU ABC123 ni baham ko'radi), ball ular o'rtasida bo'linadi va past bo'ladi. Matn hech bir ma'lum formatga mos kelmasa null. Qamrab olingan: UA, BG, BY, RO, ES, CZ, BE, EE, HU, TR, PL, SK, LV, LT, MD, IT, FR, RS, DE. |
data.results[].box | Raqamning piksellardagi o'rni: xmin, ymin, xmax, ymax. |
data.results[].dscore | Raqamni aniqlash ishonchliligi 0-1. |
data.results[].vehicle | {type, score, box}: plastinkani olib yurgan transport vositasi. type — car, bus, truck yoki motorcycle; score — aniqlash ishonchliligi 0-1; box — transport vositasining piksellardagi joylashuvi (xmin, ymin, xmax, ymax). Old tomondan ko'rinadigan turistik avtobuslar va mikroavtobuslar yoki furgonlar truck deb belgilanishi mumkin (detektorda van klassi yo'q). Aniqlangan hech bir transport vositasi plastinkani o'z ichiga olmasa null, config.mode=fast bilan esa doim null. |
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 (config.threshold hech qanday natija qoldirmaganda ham). 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
}
}'
Yevropa transport vositalari uchun davlat raqamini tanish (ANPR / ALPR)
Plate Image Recognition API — davlat raqamini tanish (LPR) xizmati: fotosurat yuborasiz va raqam matnini JSON ko'rinishida olasiz. Bu bizning o'z ANPR / ALPR dvigatelimiz, chegara o'tkazish punktlari va avtobus depolaridagi YeI yuk mashinalari va avtobuslarida sozlangan, shuningdek yengil avtomobil va mototsikl raqamlarini ham o'qiydi.
v4 versiyasi plastinka davlatini va transport vositasi turini (car, bus, truck yoki motorcycle) qo'shadi. U shuningdek ixtiyoriy so'rov parametrlarini qabul qiladi: regions — natijani kutayotgan davlatlaringiz tomon og'dirish uchun; camera_id va timestamp — javobda qaytariladi; baho (score) chegarasi; va fast rejimi.
GDPR dizayn bosqichidan: API YeI da joylashgan, har bir rasm faqat xotirada qayta ishlanadi va hech qachon saqlanmaydi. Hech qanday uchinchi tomon ko'rish xizmati rasmlaringizni ko'rmaydi.
Integratsiyalar: Home Assistant
Bizning ochiq kodli Home Assistant integratsiyamiz (MIT litsenziyasi, HACS orqali o'rnatiladi) Home Assistant kameralaringizdan davlat raqamlarini o'qiydi. U har bir plastinka uchun sensor va hodisa beradi, plastinka davlati va transport vositasi turi bilan. Frigate qo'llab-quvvatlanadi: transport vositasi hodisasida u suratni o'qiydi va plastinkani Frigate ga sub-label sifatida qaytarib yozadi. Kirish OAuth orqali, shuning uchun har bir foydalanuvchi o'z bepul kalitini oladi.
Yangilandi