👁 Компьютерное зрение: как изменилась разработка за 7 лет

Недавно вернулся к теме Computer Vision после паузы с 2018-19 года — и это как будто попал в другую эпоху. Делюсь впечатлениями. — 🕰 Как это было тогда Помню то время: каждая команда варила свой собственный суп на основе OpenCV. Никаких стандартов переносимости — просто упаковываешь всё в DLL и молишься, что на другой машине указатели не поедут. А они ехали. Постоянно. void* или void** — классика жанра, от которой дёргался глаз. Документация? У коммерческих вендоров она была написана будто назло: половина методов задокументирована на уровне “смотри исходники”, а исходников нет. Датасеты — у каждой конторы свои, в своих форматах, несовместимых ни с чем. — 🚀 Что изменилось сейчас Переносимость моделей стала стандартом:ONNX — универсальный формат обмена моделями. Обучил в PyTorch, задеплоил через ONNX Runtime хоть на Windows, хоть на ARM, хоть на браузер. Без боли с указателями → TensorRT (NVIDIA) и OpenVINO (Intel) — оптимизированный инференс под конкретное железо, с нормальной документацией → Triton Inference Server — стандарт для серверного деплоя CV-моделей как REST/gRPC сервиса

Экосистема датасетов и моделей:Hugging Face — GitHub для моделей и датасетов. Тысячи готовых CV-моделей в 3 строки кода → Roboflow — менеджмент датасетов, аннотация, аугментация, версионирование — всё в одном месте → CVAT / Label Studio — открытые инструменты аннотации с экспортом в десятки форматов

YOLO из “крутой штуки” стал промышленным стандартом: → Ultralytics YOLOv8/v11 — Python-first API, одна строка для обучения, документация на уровне лучших open-source проектов. От того pointer-hell не осталось следа

Архитектурный сдвиг: → CNN потеснили Vision Transformers (ViT) — трансформеры захватили и CV → SAM (Segment Anything) от Meta — zero-shot сегментация. Буквально: “сегментируй это” без дообучения → CLIP — модель, которая понимает связь текста и изображения. Основа для мультимодальных LLM

Деплой: → Docker + Kubernetes стал дефолтным стандартом упаковки CV-решений → REST API вместо DLL — сервис за сервисом, никаких танцев с памятью — 💬 Личное впечатление Порог входа упал радикально — junior сегодня за неделю делает то, на что у нас уходил месяц. Но сложность никуда не делась: она переехала из “как это вообще запустить” в “как это правильно оптимизировать и поддерживать в проде”. Документация стала нормой, даже у отечественных разработчиков, а не исключением. Это, пожалуй, самое приятное изменение.