Computer Vision (CV)
Узнай, как компьютерное зрение позволяет машинам интерпретировать изображения и видео. Изучи ключевые задачи, отраслевые применения и то, как начать работу с Ultralytics YOLO.
Компьютерное зрение (CV) — это область искусственного интеллекта (AI), которая позволяет компьютерам и системам извлекать полезную информацию из цифровых изображений, видео и других визуальных данных. Если AI позволяет машинам мыслить, то компьютерное зрение позволяет им видеть, наблюдать и понимать. В отличие от инструментов обработки изображений на основе правил, современные системы учатся непосредственно на данных: им никогда не говорят явно, как выглядит автомобиль или опухоль, но вместо этого они определяют базовые закономерности на тысячах размеченных примеров и обобщают эти знания на изображения, с которыми они никогда раньше не сталкивались. Применяя машинное обучение (ML) и глубокое обучение (DL), компьютерное зрение превращает неструктурированные визуальные данные в решения, на которые может реагировать программное обеспечение.
Как работает компьютерное зрение#
Компьютер видит изображение как массив числовых значений, представляющих пиксели. Превращение этого массива в действие состоит из пяти этапов.

Получение изображения. Рабочий процесс начинается с аппаратного обеспечения — CMOS-сенсоров, инфракрасных камер или лидарных сканеров, — которое захватывает свет и преобразует его в цифровую сетку пикселей. Калибровка камеры учитывает геометрию объектива до начала анализа.
Предобработка. Захваченные данные нормализуются, чтобы модель получала единообразные входные данные: изменение размера, уменьшение шума и настройка контрастности.
Извлечение признаков. Система определяет низкоуровневые признаки, такие как границы, градиенты и углы. По мере того как данные продвигаются вглубь сети, эти примитивы объединяются в высокоуровневые признаки — текстуры, узоры и сложную геометрию. Система может обнаружить вертикальные линии, распознать их как столбы забора, а затем понять сцену как границу периметра. Этот процесс известен как извлечение признаков.
Вывод модели. Движком современного компьютерного зрения является сверточная нейронная сеть (CNN). В отличие от стандартной нейронной сети, которая рассматривает изображение как плоский список чисел, CNN сохраняют пространственную связь между пикселями, используя фильтры, которые скользят по изображению для обнаружения паттернов независимо от того, где они появляются в кадре. Совсем недавно визуальные трансформеры (ViTs) стали мощной альтернативой, применяя механизм внимания из обработки естественного языка к данным изображений.
Результат и действие. Модель возвращает структурированный результат — метку, набор ограничивающих рамок или маску пикселей, — на который реагирует окружающая система: отклонение дефектной детали, торможение автомобиля или подача сигнала тревоги.
Как учится модель#
Модель хороша ровно настолько, насколько хороши данные, которые она потребляет. Обучение с учителем требует больших объемов обучающих данных, а такие бенчмарки, как ImageNet и COCO, предоставляют миллионы аннотированных примеров. Во время обучения модель делает прогноз, сравнивает его с истинной меткой и настраивает свои внутренние веса для уменьшения ошибки. После обучения та же модель выполняет описанный выше шаг вывода.
Переход от систем на основе правил к глубокому обучению#

Раннее компьютерное зрение зависело от ручного конструирования признаков: инженеры определяли жесткие геометрические параметры, чтобы помочь машинам распознавать объекты. Эти системы были хрупкими и давали сбой при изменении освещения или появлении объекта под незнакомым углом. Публикация AlexNet в 2012 году, обученной на более чем миллионе размеченных изображений ImageNet, стала поворотным моментом, продемонстрировав, что сверточные сети могут превосходить подходы с ручным проектированием в масштабе. Глубокое обучение заменило правила, настроенные вручную, архитектурами, которые сами изучают свои признаки, достаточно гибкими, чтобы выдерживать условия реального мира, которые никогда не контролируются идеально.
Компьютерное зрение против обработки изображений против машинного зрения#
Важно отличать компьютерное зрение от смежных областей, с которыми его регулярно путают.
- Обработка изображений манипулирует изображением для его улучшения или извлечения сигнала: настройка яркости, контрастности или применение фильтров. Ее результатом обычно является другое изображение. Компьютерное зрение принимает изображение на вход и выдает интерпретацию («в этой комнате три человека»). Компьютерное зрение регулярно использует обработку изображений в качестве подготовительного этапа.
- Машинное зрение относится к системам промышленного контроля, работающим в жестко контролируемых средах с фиксированным освещением и известным положением деталей. Компьютерное зрение — это более широкая дисциплина, созданная для работы с непредсказуемыми, неконтролируемыми условиями.
- Обработка естественного языка работает с текстом и речью. Компьютерное зрение полностью сосредоточено на визуальных данных, хотя модели «зрение-язык» все больше объединяют их.
Основные задачи компьютерного зрения#
Компьютерное зрение — это не одна функция, а набор отдельных задач, каждая из которых решает свою проблему. Подробный разбор каждой из них см. в полном руководстве по задачам компьютерного зрения.
- Классификация изображений: присваивает одну метку всему изображению, отвечая на вопрос «что на этой картинке?» — например, сортировка продуктов как дефектных или бездефектных. Тесно с этим связано распознавание изображений, которое определяет, что присутствует на снимке.
- Обнаружение объектов: идентифицирует отдельные объекты и рисует ограничивающую рамку вокруг каждого из них, позволяя системам подсчитывать и находить несколько объектов в одном кадре.
- Сегментация экземпляров: создает маску на уровне пикселей для каждого обнаруженного объекта, разделяя отдельные экземпляры одного класса. Семантическая сегментация вместо этого присваивает класс каждому пикселю без различения экземпляров.
- Оценка позы: обнаруживает ключевые точки на объекте, такие как суставы человеческого тела, для отслеживания движений и осанки.
- Ориентированные ограничивающие рамки: подгоняют повернутые рамки к объектам, которые не выровнены по осям — это необходимо для аэрофотоснимков и спутниковых изображений.
- Трекинг объектов: отслеживает объект по видеопотоку, сохраняя постоянный идентификатор между кадрами. Оптический поток дополняет это анализом видимого движения между последовательными кадрами.
- Оптическое распознавание символов (OCR): преобразует изображения печатного или рукописного текста в машиночитаемые данные, автоматизируя обработку документов в больших масштабах.
Выбор правильной задачи#
Согласование технической задачи с бизнес-целью с самого начала позволяет избежать дорогостоящей переделки.
| Бизнес-цель | Используемая задача |
|---|---|
| Сортировка продуктов по категориям | Классификация изображений |
| Подсчет элементов или определение их положения | Детекция объектов |
| Анализ точной формы или границы объекта | Сегментация экземпляров |
| Отслеживание движения по видеокадрам | Отслеживание объектов |
| Измерение положения тела или углов суставов | Оценка позы (pose estimation) |
| Обнаружение повернутых объектов на аэрофотоснимках | Ориентированные ограничивающие рамки |
| Чтение текста из документов или с этикеток | Оптическое распознавание символов |
Реальные приложения#
Компьютерное зрение теперь лежит в основе производственных систем в большинстве основных отраслей.

- Производство и контроль качества. Современные производственные линии работают быстрее человеческих возможностей визуального восприятия. Системы технического зрения выполняют мгновенный контроль качества, выявляя микротрещины или смещенные компоненты на скорости линии без утомления, которое накапливает инспектор-человек. Мониторинг признаков износа оборудования также позволяет осуществлять предиктивное обслуживание — выявлять признаки сбоя до того, как поломка вызовет незапланированный простой. См. компьютерное зрение в производстве и обнаружение дефектов.
- Здравоохранение и диагностика. Алгоритмы анализа медицинских изображений обрабатывают рентгенограммы, МРТ и КТ-сканы для обнаружения опухолей на ранней стадии, микротрещин и аномалий сетчатки, которые легко пропустить в условиях нехватки времени. В операционной системы компьютерного зрения обеспечивают пространственное картирование в реальном времени во время малоинвазивных процедур. См. компьютерное зрение в здравоохранении.
- Ритейл. Магазины без касс используют слияние датчиков и алгоритмы зрения для отслеживания товаров, покидающих полки, и автоматического выставления счетов покупателям. Те же системы контролируют уровень запасов в режиме реального времени для запуска оповещений о пополнении, поддерживая управление запасами и предотвращение потерь в розничной торговле. См. компьютерное зрение в ритейле.
- Автономный транспорт. Уровень восприятия — это наиболее критичный с точки зрения безопасности компонент самоуправляемого автомобиля. Системы технического зрения в реальном времени идентифицируют разметку полосы движения, дорожные знаки, пешеходов и другие транспортные средства, объединяя данные с камер с радарами и лидарами для построения 360-градусной модели окружения автомобиля с помощью 3D-обнаружения объектов. См. автономные транспортные средства.
- Безопасность и мониторинг. Инфраструктура безопасности перешла от пассивной записи к проактивному вмешательству: обнаружение слоняющихся людей в зонах с ограниченным доступом, выявление необычных поведенческих паттернов по мере их возникновения и поддержка управления очередями в общественных местах. Обнаружение аномалий является базовой возможностью.
- Сельское хозяйство. Дроны и тракторы оценивают здоровье урожая на уровне отдельных растений, анализируя многоспектральные изображения на предмет обезвоживания, заражения вредителями или дефицита питательных веществ. Вода, пестициды и удобрения затем применяются только там, где это необходимо, а не по всему полю. См. компьютерное зрение в сельском хозяйстве.
Компьютерное зрение на периферии (Edge)#
Визуальный анализ в реальном времени все чаще запускается на периферии — непосредственно на камере или локальном шлюзе, — а не путем маршрутизации видео на централизованный облачный сервер. Это важно по двум причинам.
Задержка падает практически до нуля, что не подлежит обсуждению для автономной робототехники или промышленного осмотра линий, где задержка в миллисекунды приводит к ошибкам. А поскольку по сети передаются только метаданные, а не исходное видео, требования к пропускной способности резко снижаются, в то время как конфиденциальность повышается, поскольку конфиденциальные материалы никогда не покидают локальное устройство. Edge AI и инференс в реальном времени делают это практичным, а такие варианты развертывания моделей, как ONNX и TensorRT, позволяют одной обученной модели работать на различном оборудовании.
Проблемы и ограничения#
Качество данных. Модель отражает качество своих обучающих данных. Наборы данных с низким разрешением, плохо размеченные или нерепрезентативные данные создают ненадежные модели, а создание разнообразного размеченного набора данных часто является более трудоемким, чем проектирование алгоритма. См. разметку данных.
Экологические переменные. Сильный дождь, блики на объективе, частичное перекрытие и переменный масштаб объектов ухудшают производительность. Надежные системы полагаются на аугментацию данных во время обучения для симуляции этих условий и создания устойчивости до развертывания, а также на тщательную валидацию во избежание переобучения.
Этические соображения и предвзятость. Модель, обученная на наборе данных, в котором отсутствует демографическое разнообразие, будет работать неравномерно для разных групп населения. Организации, развертывающие системы, анализирующие людей (в медицинских изображениях, на производстве или в общественных местах), должны проводить аудит своих наборов данных на предмет справедливости и соблюдать новые правила, регулирующие автоматизированное принятие решений.
Будущее компьютерного зрения#
Визуальные трансформеры меняют представление о том, чего можно достичь в задачах, требующих понимания связей между удаленными частями изображения. Помимо этого, модальное мультиобучение объединяет визуальные данные с текстом, звуком и глубиной для создания систем с более богатым контекстным пониманием — ранним примером являются модели «зрение-язык», которые отвечают на вопросы об изображениях.
Генеративный AI напрямую решает проблему нехватки данных. Синтетические данные позволяют создавать гиперреалистичные изображения редких сценариев — специфических режимов отказов, необычных проявлений болезней, — которые невозможно собрать в достаточном объеме в реальном мире. Между тем камеры глубины и лидары подталкивают системы от плоского анализа изображений к пространственным вычислениям, где цифровая информация накладывается на физический мир для таких приложений, как AR-руководства по обслуживанию и структурное картирование.
Реализация компьютерного зрения с помощью Ultralytics#
Для команд, пилотирующих проект компьютерного зрения, Ultralytics YOLO26 является практичной отправной точкой для обнаружения объектов в реальном времени — с открытым исходным кодом, обширной документацией и достаточно быстрой для работы на периферии. Показатели точности и задержки для разного оборудования опубликованы на странице бенчмарков, а сравнение моделей бок о бок приведено в документации. Более широкая экосистема включает OpenCV для классической обработки изображений и PyTorch в качестве основного фреймворка для обучения.
from ultralytics import YOLO
# Load the YOLO26n model (nano version for speed)
model = YOLO("yolo26n.pt")
# Run inference on a standard example image
# The model identifies objects and their locations
results = model("https://ultralytics.com/images/bus.jpg")
# Display the resulting image with bounding boxes
results[0].show()Этот скрипт использует предобученную модель для выполнения инференса за несколько строк. Команды, переходящие от пилотного проекта к продакшену, могут использовать Ultralytics Platform для аннотирования наборов данных, обучения моделей в облаке и управления развертыванием или применять трансферное обучение для адаптации предобученной модели к кастомному набору данных с гораздо меньшим количеством размеченных данных, чем при обучении с нуля.
Часто задаваемые вопросы#
В чем разница между компьютерным зрением и машинным обучением? Машинное обучение — это более широкая дисциплина создания систем, которые обучаются на данных. Компьютерное зрение — это применение этой дисциплины (обычно посредством глубокого обучения) к визуальным входным данным, таким как изображения и видео. Почти все современное компьютерное зрение построено на машинном обучении, но машинное обучение также охватывает текст, аудио и табличные данные.
Является ли компьютерное зрение тем же самым, что и распознавание изображений? Нет. Распознавание изображений — это одна из задач в рамках компьютерного зрения, заключающаяся в идентификации того, что появляется на изображении. Компьютерное зрение также охватывает обнаружение объектов, сегментацию, оценку позы, трекинг и понимание сцены.
Сколько данных нужно для обучения модели компьютерного зрения? Это зависит от сложности задачи и от того, какое разнообразие модель должна обрабатывать. Перенос обучения (трансфертное обучение) с предварительно обученной модели, такой как Ultralytics YOLO26, существенно снижает эту потребность, и полезные пользовательские детекторы часто обучаются на нескольких сотнях или тысячах размеченных изображений на класс, а не на миллионах, используемых для обучения базовых моделей.
Может ли компьютерное зрение работать без подключения к интернету? Да. Модели могут быть развернуты непосредственно на периферийных устройствах и работать полностью в автономном режиме, что является стандартной практикой там, где задержка, пропускная способность или конфиденциальность данных исключают отправку видео в облако.
Какой язык программирования используется для компьютерного зрения? Доминирует Python благодаря зрелости его экосистемы — пакет ultralytics, PyTorch и OpenCV. C++ используется там, где требуется максимальная производительность инференса, как правило, в встроенных и автомобильных системах.






