Нөмір белгісін тану API (ALPR / ANPR) Online
V1 нұсқасымен салыстырғанда: жаңа параметрлер regions, camera_id, timestamp, config, threshold, mode
Көлік фотосуреттеріндегі мемлекеттік нөмір белгілерін оқиды. Бір суретті (JPEG, PNG, WebP, BMP немесе TIFF, ең көбі 8 MB) image_url немесе image_base64 бар JSON денесі ретінде, «image» өрісіндегі multipart/form-data жүктемесі ретінде немесе image/* Content-Type бар шикі байттар ретінде POST арқылы жіберіңіз. Табылған әрбір нөмір белгісі мәтінімен, 0-1 бағасымен, балама оқулармен, пиксельдегі белгі жақтауымен және анықтау бағасымен қайтарылады. Қозғалтқыш — еуропалық жүк көліктері мен автобустарға бейімделген өзіміздің нөмір белгісін анықтаушы және оқушы. Суреттер жадта өңделеді және ешқашан сақталмайды. image_url жалпыға ашық http(s) мекенжайы болуы керек; жеке және ішкі мекенжайлар, сондай-ақ оларға қайта бағыттаулар қабылданбайды, ал жүктеу 10 секундтан кейін тоқтатылады.
POST https://nakordoni.eu/api/v4/data/plate-recognition
— квота класы: heavy
| Параметр | Сипаттама |
|---|---|
image_url | (JSON денесі) Суреттің жалпыға ашық http(s) URL мекенжайы. Ең көбі 8 MB, ең көбі 3 қайта бағыттау, жүктеу шегі 10 s. |
image_base64 | (JSON денесі) base64 форматындағы сурет (data:image/...;base64, префиксіне рұқсат етіледі). image_url немесе image_base64 жіберіңіз, екеуін бірге емес. |
regions | Міндетті емес. Күтетін елдер ISO 3166-1 alpha-2 кодтарымен: JSON массиві ["PL","DE"] немесе үтірмен бөлінген жол "PL,DE" (multipart өрісі немесе query параметрі). 10-ға дейін. Аймақты болжау мен оқу реті осы елдерге бейімделеді: ең жақсы оқу көрсетілген елдердің ешқайсысының пішіміне сәйкес келмесе, ал балл жағынан ең көбі 0.15-ке төмен басқа үміткер сәйкес келсе, сол үміткер нөмір болады. Көрсетілген елдердің ешқайсысына сәйкес келмейтін нөмір әдеттегі жауабын сақтайды. |
camera_id | Міндетті емес. Камераңыздың немесе шлагбаумыңыздың ID-і, 128 таңбаға дейін. data.camera_id ішінде өзгеріссіз қайтарылады. Әдеттегі сұрау журналынан тыс сақталмайды. |
timestamp | Міндетті емес. Түсіру уақыты өз пішіміңізде (мысалы, 2026-10-27T14:05:00Z), 64 таңбаға дейін. data.timestamp ішінде өзгеріссіз қайтарылады. Әдеттегі сұрау журналынан тыс сақталмайды. |
config | Міндетті емес. JSON нысаны {"threshold": 0-1, "mode": "fast"|"full"}. Multipart форма мен query string ішінде оны JSON жолы ретінде жіберіңіз немесе threshold және mode өрістерін пайдаланыңыз. |
threshold | Міндетті емес, config.threshold сияқты. Балы осы мәннен (0-1) төмен нәтижелер алынып тасталады. Ешқайсысы қалмаса, жауап 404 no_plate_detected болады. |
mode | Міндетті емес, config.mode сияқты. full (әдепкі) нөмірді тануды және көлікті анықтауды орындайды. fast көлікті анықтауды өткізіп жібереді, жылдамдық v2-ге жақын: region әлі де толтырылады, vehicle — null. |
Жауап өрістері — жауап конвертіндегі data объектісінің ішінде. [] тізімді білдіреді, сондықтан data.items[].name — әр элементтің name өрісі. Мәні жоқ өріс null болады, мүлде болмайды немесе бос тізім қайтарады — толтырғышты ешқашан қоймаймыз.
| Өріс | Сипаттама |
|---|---|
data.success | Кемінде бір нөмір белгісі оқылса true; data.message қанша екенін көрсетеді. |
data.processing_time | Сұрауға кеткен уақыт миллисекундпен (жүктеу, нөмірді тану және көлікті анықтау). v4 көлікті анықтауға байланысты v2-ден ұзағырақ, әдетте бір кескінге 0.5-1.5 s. config.mode=fast кезінде көлікті анықтау болмайды, ал уақыт v2-ге жақын. |
data.camera_id | Сіз жіберген camera_id, өзгеріссіз. Тек жіберген жағдайда ғана болады. |
data.timestamp | Сіз жіберген timestamp, өзгеріссіз (жол жол болып қалады, сан сан болып қалады). Тек жіберген жағдайда ғана болады. |
data.results[] | Әр нөмір белгісіне бір жазба, алдымен анықтау бағасы ең жоғарысы. |
data.results[].plate | Нөмір белгісінің мәтіні, бас әріптермен, тек A-Z әріптері мен сандар (бос орынсыз және сызықшасыз). |
data.results[].score | Оқу сенімділігі 0-1 (әр таңбаның сенімділігінің орташа мәні). |
data.results[].candidates[] | {plate, score} түріндегі 5-ке дейінгі оқу, ең жақсысы алдымен; біріншісі — нөмір белгісі. |
data.results[].region | {code, score}: code — нөмір белгісі пішімінен оқылған нөмір белгісінің ISO 3166-1 alpha-2 елі (мысалы, UA, PL, RO). score 0-1 — оқу сенімділігінің пішімнің нақтылық дәрежесіне көбейтіндісі; бірдей пішім бірнеше елде қолданылса (мысалы, LT, MD және HU ABC123 пішімін бөліседі), баға солардың арасында бөлінеді және төмен болады. Мәтін белгілі ешбір пішімге сәйкес келмесе null. Қамтылған: UA, BG, BY, RO, ES, CZ, BE, EE, HU, TR, PL, SK, LV, LT, MD, IT, FR, RS, DE. |
data.results[].box | Нөмір белгісінің пиксельдегі орны: xmin, ymin, xmax, ymax. |
data.results[].dscore | Нөмір белгісін анықтау сенімділігі 0-1. |
data.results[].vehicle | {type, score, box}: нөмір орнатылған көлік. type — car, bus, truck немесе motorcycle; score — анықтау сенімділігі 0-1; box — көліктің пикселдегі орны (xmin, ymin, xmax, ymax). Алдынан көрінген туристік автобустар мен микроавтобустар немесе фургондар truck деп анықталуы мүмкін (детекторда фургон класы жоқ). Анықталған көліктердің ешқайсысында нөмір болмаса — null, ал config.mode=fast кезінде әрқашан 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 ешқандай нәтиже қалдырмаған жағдайда да). 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
}
}'
Еуропалық көліктерге арналған нөмір белгісін тану (ANPR / ALPR)
Plate Image Recognition API — нөмір белгісін тану (LPR) қызметі: фото жібересіз, нөмір мәтінін JSON түрінде аласыз. Бұл біздің өз ANPR / ALPR қозғалтқышымыз, шекара өткелдеріндегі және автобус деполарындағы ЕО жүк көліктері мен автобустарына бейімделген, сондай-ақ жеңіл көлік пен мотоцикл нөмірлерін де оқиды.
v4 нұсқасы нөмірдің елін және көлік түрін (car, bus, truck немесе motorcycle) қосады. Сонымен қатар міндетті емес сұрау опцияларын қабылдайды: нәтижені күтетін елдерге бейімдейтін regions; жауапта қайтарылатын camera_id және timestamp; балл шегі; және fast режимі.
Жобалауынан GDPR: API ЕО-да орналасқан, ал әр кескін тек жадта өңделеді және ешқашан сақталмайды. Үшінші тарап көру қызметтері кескіндеріңізді көрмейді.
Интеграциялар: Home Assistant
Біздің ашық бастапқы кодты Home Assistant интеграциясы (MIT лицензиясы, HACS арқылы орнатылады) Home Assistant камераларынан нөмір белгілерін оқиды. Ол әр нөмір үшін сенсор мен оқиға береді, нөмірдің елі мен көлік түрімен бірге. Frigate қолдауы бар: көлік оқиғасы кезінде снимокты оқиды да, нөмірді Frigate-ке sub-label ретінде қайта жазады. Кіру OAuth арқылы жүреді, сондықтан әр пайдаланушы өз тегін кілтін алады.
Жаңартылды