3SELLER Journal 3SELLER →

Как нейросеть распознает изображение: от 3,5 млн пикселей до уверенных «98% кот»

14.11.2026

Загружаете фото в приложение, а через секунду получаете подпись: «человек, собака, мяч, уверенность 98%». Ещё мгновение назад это был просто набор пикселей. Внутри что-то разобрало хаос из миллионов чисел и выдало ответ человеческим языком. Сейчас покажу, что именно там произошло, без магии и без формул сложнее школьной арифметики.

За восемь лет практики я собрал десятки систем компьютерного зрения: классификаторы брака на производстве, детекция людей в видеопотоке, распознавание документов. И точно знаю, где красивая теория расходится с реальностью.

Компьютер не видит картинку. Он видит таблицу чисел

Человек смотрит на фотографию и видит кота. Компьютер получает матрицу, где каждая ячейка хранит число от 0 до 255, кодирующее яркость пикселя. У цветного изображения таких слоя три: красный, зелёный и синий. Кадр размером 1080×1080 превращается в 3,5 миллиона значений, и из этого массива нужно вытащить смысл: кот, рысь или соседская подушка.

До середины 2010-х задачу решали руками. Инженеры писали фильтры для выделения граней, детекторы углов и текстур, поверх прикручивали классификатор. Работало средне: стоило смениться освещению или ракурсу, и система сыпалась. Никто не смог заранее описать все варианты того, как выглядит кошачье ухо под разными углами. Прорыв случился, когда поиск признаков отдали самой сети. Современный стандарт: свёрточные нейронные сети, по-английски CNN (Convolutional Neural Network), которые выучивают закономерности прямо из данных.

Свёртка: сеть ищет не кота, а линии, углы и текстуры

Ключевая идея CNN проста до безобразия. Изображение разбивается на крошечные участки, вплоть до нескольких пикселей, и по ним скользит фильтр - небольшая матрица обучаемых весов. Фильтр перемножается с пикселями под собой, результат записывается в новую карту признаков. Никакой эзотерики: умножение и сложение, повторённые миллиарды раз.

Первые слои ловят примитивы: вертикальные границы, перепады яркости, диагональные штрихи. Следующие уровни складывают из примитивов формы: петлю, глаз, колесо, дугу. Ещё глубже возникают целые объекты и их части. До определённого предела чем больше скрытых слоёв в сети, тем точнее распознаётся изображение: каждый уровень достраивает картину мира из сигналов предыдущего. Похожую иерархию признаков нейробиологи нашли в зрительной коре человека ещё до эры глубокого обучения, и совпадение тут не случайное: архитектуру CNN у мозга и подсмотрели.

Между слоями стоят операции уплотнения. Pooling уменьшает карту признаков вдвое по каждой стороне, оставляя в каждой зоне самое сильное срабатывание. Сеть начинает видеть не отдельные пиксели, а крупные фрагменты и становится устойчивее к мелким сдвигам объекта в кадре. После всех свёрточных слоёв карта сплющивается в вектор, и финальный классификатор, обычно softmax, раздаёт вероятности: кот 0.94, рысь 0.04, подушка 0.02. Дальше остаётся взять класс с максимальной уверенностью.

Любопытная деталь из моей отладочной практики: промежуточные активации можно вывести как изображения и буквально увидеть, что «думает» сеть на каждом уровне. Так я однажды поймал детектор, который ориентировался на водяные знаки стоковых фото вместо содержимого кадра. Дешёвый и недооценённый способ понять модель.

Почему до 2012 года распознавание буксовало

Долгие годы компьютерное зрение топталось на месте: точность классификации на конкурсе ImageNet с тысячами категорий не желала подниматься выше 75%. В 2012 году сеть AlexNet обрушила ошибку с 26% до 15,3%, и для индустрии это стал момент истины. Секретов три: глубокая архитектура, обучение на GPU вместо процессора и огромный размеченный датасет. Уже через три года ошибка лучших моделей упала ниже 5%, что соответствует уровню тренированного человека.

Мораль простая: архитектура важна, но данные важнее. В обсуждениях на Reddit практикующие инженеры спорят о выборе архитектуры, но почти всегда упираются в один и тот же вопрос - какие данные и сколько их. На этом тезисе ломается большинство практических проектов, к нему мы ещё вернёмся.

Обучение: миллион картинок и миллиард подгонок весов

Сеть не рождается знающей. Её обучают на датасете, коллекции изображений с метками: вот кот, вот собака, вот волк. Модель смотрит на снимок и выдаёт догадку. Функция потерь измеряет размер ошибки, а алгоритм обратного распространения подправляет веса всех слоёв в сторону её уменьшения. Повторить миллиарды раз. На ноутбуке такой марафон тянется месяцами, поэтому обучение гоняют на кластерах GPU.

Чтобы однозначно определять класс образа, сеть должна выучить достаточное количество признаков: надёжный ответ даёт совокупность мелких деталей, а не одна «серебряная пуля». Здесь же главная боль каждого проекта: нейросети безжалостно требовательны к размеру и качеству датасета. Для учебных задач берут открытые наборы вроде ImageNet или COCO. Для реального бизнеса нужен свой: снимки именно с вашей камеры, при вашем освещении, на вашем фоне. Разметка съедает до 70% времени и бюджета, а кривые метки бьют по точности больнее, чем неудачная архитектура.

Три приёма экономят месяцы. Аугментация: один снимок показываем сети повёрнутым, обрезанным, затемнённым, зашумлённым, и из сотни фото получаем тысячи вариантов. Transfer learning: берём сеть, обученную на ImageNet, и дообучаем только верхние слои на своих данных; там, где с нуля требовались сотни тысяч снимков, хватает пары тысяч. Синтетика: генерируем обучающие картинки другой нейросетью, если реальных не набрать. Я так за три дня поднимал детектор дефектов на текстильной линии, хотя изначально проект оценивали в полгода.

Детекция: когда объектов на фото много

Классификация отвечает одним словом на вопрос «что на снимке». Реальность грубее: в кадре пять человек, две машины и светофор. Нужна детекция, найти каждый объект, обвести рамкой и подписать класс. Эволюция алгоритмов здесь показательна: видно, как инженерная мысль двигалась от тупого перебора к элегантности.

R-CNN, дедушка современных детекторов, работал наивно: сначала алгоритм выделял тысячи потенциальных областей с объектами, затем каждую прогоняли через классификатор отдельно. Медленно, но идея рабочая. Fast R-CNN объединил этапы выделения регионов и классификации в едином проходе, и скорость выросла в разы. Следующий шаг, Faster R-CNN, добавил сеть предложений регионов (Region Proposal Network), которая сама учится предлагать перспективные области прямо на картах признаков. Всё изображение прогоняется через CNN для поиска областей интереса, каждая область проходит слой RoI Pooling и питает полностью связанные слои. Дальше softmax-классификатор решает, что за объект на картинке, а линейный регрессор подгоняет координаты рамки. Звучит громоздко, зато скорость и точность выросли настолько, что архитектура до сих пор живёт в медицине и промышленности: там важнее не пропустить дефект, чем уложиться в миллисекунды.

YOLO пошла принципиально другим путём, и название говорит само за себя: You Only Look Once, «смотришь лишь однажды». Алгоритм обрабатывает изображение целиком и за один проход предсказывает классы и координаты всех объектов одновременно. Снимок в диагностике может подождать лишние полсекунды, беспилотник не может. Поэтому YOLO и её потомки царят там, где решает скорость: видеонаблюдение, робототехника, автопилоты, контроль качества на скорости конвейера.

Отдельная история - RetinaNet с функцией потерь Focal Loss. Проблема, которую она решает: на типичном фото пустого фона в тысячи раз больше, чем объектов, и сеть тонет в лёгких фоновых предсказаниях. Focal Loss заставляет модель игнорировать простые примеры и концентрироваться на сложных. На несбалансированных данных с мелкими объектами это даёт прирост, который в других архитектурах приходится выжимать костылями.

Как оценивают качество детектора

Точность 95% сама по себе ничего не значит, пока не ясно, по какой метрике. В детекции рамку сравнивают с эталонной через IoU, пересечение по объединению: если рамки перекрываются меньше чем наполовину, объект считается не найденным. Дальше считают precision, долю верных срабатываний среди всех, и recall, долю найденных объектов среди существующих. Пропустить опухоль на снимке и дать ложную тревогу - события разной цены, и порог уверенности настраивают под задачу, а не по красивому числу в презентации.

Мой стандартный вопрос заказчику перед стартом: что дороже, пропустить брак или остановить линию зря? Ответ меняет и метрику, и пороги, а иногда и всю архитектуру системы.

Почему сеть ошибается на живых данных

Классика из практики: модель отличает породы собак с точностью 97% на тесте, а потом пользователь присылает хаски с волчьим окрасом, и сеть уверенно кричит «волк». Причин две. Первая: сеть сопоставляет признаки, а не смысл, и характерной совокупности деталей достаточно для однозначного вывода, даже если человеку он кажется абсурдным. Вторая: датасет. Если волки в обучающих данных стояли на снегу, а собаки на траве, сеть выучит не разницу между зверями, а разницу между фонами.

На Reddit разработчики компьютерного зрения собирают целые коллекции таких историй: сеть учит не то, что вы хотели ей объяснить, а то, что было проще выучить. Отсюда рабочее правило, которое я повторяю каждому заказчику: перед запуском проверяйте поведение не на тестовом наборе, а на реальных данных из вашего контура. Освещение, разрешение камеры, пыль на объективе, сжатие при передаче съедают точность быстрее, чем плохой датасет. И вишенка: существуют adversarial-атаки, когда специально подобранное искажение в пару пикселей заставляет сеть путать панду с гитарой. Для публичных систем это отдельная строка в бюджете на безопасность.

Трансформеры пришли и в зрение

Свёрточные сети лет десять держали первенство, но в 2020-м в компьютерное зрение пришли трансформеры, те же, что стоят за большими языковыми моделями. Vision Transformer режет картинку на квадраты 16×16 пикселей и анализирует связи между ними глобально, а не в маленьком окне. Модели семейства CLIP научились сопоставлять изображения с текстом: сеть понимает запрос «кот в костюме астронавта» и находит или генерирует подобное. Генеративные модели вроде Nano Banana пошли дальше: они не только читают изображение, но и создают или дорисовывают его по текстовому описанию. Граница между пониманием и созданием изображений стёрлась: одна мультимодальная модель делает и то, и другое.

Где распознавание уже зарабатывает деньги

Технология давно вышла из лабораторий. В системах видеонаблюдения нейросеть сначала распознаёт объекты на кадре, затем определяет действия и классифицирует их: человек идёт, человек упал, человек без каски в запретной зоне. В медицине CNN находят опухоли на маммографии и диабетическую ретинопатию на снимках сетчатки. Иногда они ловят паттерны, которые глаз уставшего специалиста пропускает. Ритейл строит кассы без сканирования, производство ставит контроль брака прямо на конвейер, страховые оценивают ущерб по фото авто за минуты вместо дней.

Отдельная ветка: документы. Нейросетевой OCR распознаёт текст на сканах с точностью, которой хватает для автоматизации бухгалтерии и логистики. Счета, накладные, договоры разгребаются без ручного ввода: по моим проектам обработка одного документа падает с трёх минут ручной работы до десяти секунд. На потоке в тысячи документов в день система окупается за месяц.

Как пощупать технологию самому из России

На этом месте честный разбор обычно упирается в проблему: мультимодальные модели живут на зарубежных серверах, для оплаты нужны иностранные карты, а самостоятельные обходы через прокси и API-ключи превращаются в вечные танцы с бубном и риск блокировки. Когда есть задачи поважнее, заниматься этим не хочется.

Мой рабочий вариант - 3GPT от 3SELLER: ИИ-роутер с прямым доступом из России к последним флагманским моделям. Внутри Chat GPT 6 Astra, Claude Fable 5, Claude Fable 5.1, Claude Opus 5.5, Chat GPT 5.5, Chat GPT 6.1 Sol. Работает Nano Banana для создания и обработки максимально реалистичных изображений, есть генерация видео и синтез голоса. Пополнение баланса российской картой, через СБП или криптой, иностранные карты не нужны. Цена вопроса: 149 рублей за доступ к набору моделей, за которые в оригинале пришлось бы платить десятками долларов каждый месяц.

3GPT: доступ к флагманским нейросетям из России

В повседневной работе использую это для бизнес-задач: продающие тексты, прототипы сайтов, генерация и обработка изображений, видеоролики. Повторить эксперимент из начала статьи можно за минуту: загрузите любую фотографию и попросите модель детально описать состав кадра, объекты, действия, детали. Один живой опыт объясняет, как сеть разбирает изображение на признаки, лучше десятка статей.

Для сценариев без ручных промптов есть готовые ИИ-агенты: выбираете агента под задачу, начинаете общение и при необходимости меняете модель прямо в чате. Удобно, когда не хочется настраивать контекст и подбирать модель вручную.

Готовые ИИ-агенты в 3GPT

Получить доступ ко всем флагманским моделям нейросетей из России можно на официальном сайте 3GPT. Дальше берите фото из своих рабочих процессов: склад, витрина, документы, и смотрите, что модель вытащит из кадра. Полчаса таких экспериментов дадут больше понимания о компьютерном зрении, чем час чтения сухих определений.

← Вернуться к блогу

Читать дальше