Розробка рішень у галузі комп'ютерного зору

Проектуємо та впроваджуємо системи штучного інтелекту: від прототипу до production-ready рішення. Наша команда поєднує експертизу в машинному навчанні, дата-інжинірингу та MLOps, щоб AI працював не в лабораторії, а в реальному бізнесі.
Показано 30 з 186Усі 1566 послуг
Розробка системи Computer Vision (комп'ютерний зір)
Середній
від 2 тижнів до 3 місяців
Розробка системи класифікації зображень
Середній
від 1 тижня до 3 місяців
Розробка системи розпізнавання облич (Face Recognition)
Складний
від 2 тижнів до 3 місяців
Розробка системи детекції облич (Face Detection)
Простий
від 1 тижня до 3 місяців
Інтеграція Google Cloud Vision OCR
Простий
від 1 дня до 3 днів
Інтеграція Azure Computer Vision OCR
Простий
від 1 дня до 3 днів
Часті запитання

Напрямки AI-розробки

Етапи розробки AI-рішення

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1279
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1194
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    901
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1119
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    586
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    853

Computer Vision: Детекція, Сегментація, OCR та Відеоаналітика

На виробництві стоїть камера, контролює якість продукції. Модель навчена на 10 тисячах розміченних зображень, точність на тесті — mAP 0.84. Запускають у production — і в першу ж тиждень пропускають 30% дефектів. Виявляється, освітлення на лінії змінюється по змінах, і distribution shift вбиває метрики. Це класична історія з Computer Vision у промисловості.

Детекція Об'єктів: YOLO, RT-DETR та Все Між Ними

YOLO — стандарт для задач real-time детекції. YOLOv8 та YOLOv11 від Ultralytics — найчастіше використовувані версії у production: простий API, активна спільнота, гарна документація, вбудована валідація та експорт в ONNX/TensorRT.

Для задач з високими вимогами до точності та коли latency менш критична — RT-DETR (Real-Time DEtection TRansformer). Transformer-базована архітектура без NMS дає краще mAP на COCO при порівнянній швидкості з YOLOv8l.

Типова помилка при тренуванні детектора. Датасет 8000 зображень, 3 класи, fine-tune YOLOv8m — F1 0.73 на валідації. Дивимося confusion matrix: один клас майже ніколи не детектується. Причина: дисбаланс 1:23 на користь двох інших класів. Рішення: oversampling редкого класу, focal loss замість BCELoss для objectness, augmentації (Mosaic, MixUp) вимкнути для редкого класу.

Transfer learning та fine-tuning. Претренировані на COCO або ImageNet ваги — обов'язкова стартова точка. Повне навчання з нуля потребує мільйони прикладів. Fine-tune на 500-2000 доменних зображеннях при правильній аугментації дає робочу модель за 1-2 дні навчання на одній GPU.

Експорт та оптимізація. Для edge deployment: експорт в ONNX → TensorRT engine. YOLOv8n в TensorRT FP16 на Jetson AGX Orin дає 150+ FPS при P99 latency < 8ms. На сервері (A10G): 700+ FPS для YOLOv8n в TensorRT INT8.

Сегментація: SAM, Mask R-CNN та Instance Segmentation

SAM (Segment Anything Model) від Meta змінив підхід до сегментації. SAM 2 — працює з відео, підтримує трекинг об'єктів через кадри. Для задач "виділи об'єкт по промпту (точка, bbox)" SAM — кращий вибір з коробки.

Для production instance segmentation без інтерактивного промпту — Mask R-CNN або YOLOv8-seg. YOLOv8-seg учиться як звичайний детектор з додатковими масками, зручний у тих же pipeline'ах.

Семантична сегментація (кожен пікель — клас) — SegFormer, DeepLabV3+. SegFormer-B5 — хороший баланс точності та швидкості для задач типу аналізу супутникових знімків або медичної сегментації.

Кейс: сегментація клітин на мікроскопічних зображеннях. Датасет 400 зображень з ручною розміткою. Обучение Mask R-CNN на ResNet-50 backbone дало IoU 0.61 — погано. Проблема: об'єкти (клітини) перекриваються, стандартний NMS вбиває перекриваючі передсказання. Рішення: переход на cellpose (спеціалізована для біомедичних) + soft-NMS. IoU виріс до 0.79.

OCR: Коли Tesseract Не Справляється

Tesseract — відправна точка для простих задач: друкований текст, гарне освітлення, рівне розташування. Як тільки з'являються рукописні елементи, нестандартні шрифти, перспективні спотворення або багатоколонний макет — Tesseract деградує швидко.

PaddleOCR — production-grade рішення: обнаруження текстових блоків + розпізнавання + структурний аналіз. Працює з коробки для 80+ мов, включаючи російську. Підтримує таблиці та документи зі складною структурою.

TrOCR (Microsoft) — трансформерний OCR з сильними результатами на рукописному тексті. Для українського рукописного тексту потрібен fine-tuning: базова модель навчена переважно на латиниці.

Document understanding. Для задач "видобути дані зі счету / контракту / паспорта" — LayoutLMv3 або Donut. Ці моделі розуміють layout документа, а не тільки текст. Інтеграція через Hugging Face Transformers, fine-tune на 200-500 розміченних документах.

Типовий pipeline для production OCR:

  1. Preprocessing: deskew, denoising, binarization через OpenCV
  2. Обнаруження текстових блоків: PaddleOCR detection або CRAFT
  3. Розпізнавання: PaddleOCR recognition або TrOCR
  4. Post-processing: нормалізація, валідація через regex або LLM для структурованих полів

Для документів з фіксованою структурою (типові форми) template matching + OCR по координатах часто надійніше та швидше end-to-end рішення.

Face Recognition: Ідентифікація та Верифікація

Face recognition = detection + alignment + embedding + matching. Кожний етап важливий.

Detection. RetinaFace або InsightFace для точної локалізації лиця та keypoints. MTCNN — старіше, але надійне рішення.

Embedding. ArcFace (InsightFace) — state-of-the-art для face recognition embeddings. Моделі iresnet50/iresnet100 претренировані на MS1MV3 (5M тотожностей). Embedding-вектор 512 float32, порівняння по cosine similarity.

Threshold tuning. Поріг рішення — критичний параметр. При threshold 0.6 (cosine) типовий FPR на LFW — 0.001, TPR — 0.985. У production поріг потрібно калібрувати під реальний distribution: люди в масках, з змінленою зовнішністю, у різних умовах освітлення.

Liveness detection. У серйозних production-системах не обійтись без anti-spoofing: захист від фото, відео, 3D-маски. MiniFASNet — lightweight модель, працює на CPU. FaceX-Zoo містить кілька претренированих liveness-детекторів.

Відеоаналітика

Відео — це послідовність кадрів плюс часове вимірювання. Наївний підхід — детектувати на кожному кадрі — працює, але дорого.

Трекинг. ByteTrack та BoT-SORT — стандарт для multi-object tracking. Працюють поверх будь-якого детектора, додають persistent ID об'єктам між кадрами. Це дає підрахунок об'єктів, треки руху, velocity.

Оптимізація. Не потрібно обробляти кожен кадр. Для статичних сцен: детекція на кожному 5-10 кадрі, між ними — трекер. Для детекції подій (людина війшла в зону): background subtraction (OpenCV MOG2) як lightweight pre-filter перед нейросетевою детекцією.

Action Recognition. SlowFast, VideoMAE для класифікації дій на відео. Важкі моделі, вимагають значних обчислень. Для production — ONNX export + TensorRT, або офлайн обробка.

Розгортання CV-Моделей

Онлайн інференс. Triton Inference Server (NVIDIA) — production-стандарт для serving CV-моделей. Підтримує TensorRT, ONNX, PyTorch, dynamic batching, multiple instances. REST та gRPC API.

Edge deployment. ONNX Runtime на ARM/x86 CPU. TensorFlow Lite для мобільних пристроїв. OpenVINO для Intel CPU/GPU/VPU — часто дає 2-3x прирост швидкості на Intel залізі порівняно з ONNX Runtime.

Моніторинг якості. Для CV у production мониримо: розподіл prediction confidence, доля low-confidence передсказань (індикатор OOD-даних), дрейф вхідних зображень через feature distribution (embeddings із backbone). Падіння середньої confidence з 0.87 до 0.71 за тиждень — ранній сигнал про distribution shift.

Терміни та Етапи

Прототип детектора на існуючих даних — 1-2 тижні. Production-система з оптимізацією під цільове залізо — 4-8 тижнів. Повний цикл включаючи розмітку даних (1000-5000 зображень) — 2-4 місяці. Вартість залежить від обсягу датасету, цільової платформи, вимог до точності/latency.