Как работают приложения компьютерного зрения
Узнай, как работает компьютерное зрение и как такие задачи, как классификация изображений, обнаружение объектов, сегментация, оценка позы и отслеживание, помогают решать практические задачи.
Abirami Vina7 мин. чтения
Изучая историю моделей компьютерного зрения, мы увидели, как развивалось компьютерное зрение и какой путь привел к появлению современных продвинутых моделей. Современные модели, такие как Ultralytics YOLOv8 и ее преемники, включая новейшую Ultralytics YOLO26, поддерживают множество задач компьютерного зрения и применяются в самых разных перспективных областях.
В этой статье мы рассмотрим основы компьютерного зрения и модели для этой области. Мы расскажем, как они работают и где применяются в разных отраслях. Инновации в компьютерном зрении встречаются повсюду и часто незаметно работают в фоновом режиме.
Что такое компьютерное зрение?#
Искусственный интеллект (ИИ) — это общее название множества технологий, которые призваны воспроизводить отдельные аспекты человеческого интеллекта. Одно из направлений ИИ — компьютерное зрение. Компьютерное зрение помогает машинам видеть, наблюдать и понимать окружающий мир.
Как и зрение человека, решения на основе компьютерного зрения позволяют различать объекты, измерять расстояния и обнаруживать движения. Однако люди опираются на многолетний жизненный опыт, который помогает им видеть и понимать, а компьютеры — на большие объемы данных, камеры высокой четкости и сложные алгоритмы.

Рис. 1. Сравнение человеческого зрения и компьютерного зрения.
Системы компьютерного зрения могут быстро и точно обрабатывать и анализировать визуальные данные, например изображения и видео. Способность быстро и точно анализировать огромные объемы визуальной информации делает компьютерное зрение мощным инструментом во многих отраслях — от производства до здравоохранения.
Модели зрения поддерживают различные задачи компьютерного зрения#
Модели компьютерного зрения лежат в основе любого приложения компьютерного зрения. По сути, это вычислительные алгоритмы, использующие методы глубокого обучения и позволяющие машинам интерпретировать и понимать визуальную информацию. Модели зрения поддерживают важные задачи компьютерного зрения — от классификации изображений до обнаружения объектов. Рассмотрим подробнее некоторые из этих задач и варианты их применения.
Классификация изображений#
Классификация изображений — это распределение изображений по заранее заданным классам или категориям и присвоение им меток. Модель компьютерного зрения, например YOLOv8, можно обучить на больших наборах данных с размеченными изображениями. Во время обучения модель учится распознавать закономерности и признаки, связанные с каждым классом. После обучения она может предсказывать категорию новых изображений, которых не встречала раньше, анализируя их признаки и сопоставляя их с усвоенными закономерностями.

Рис. 2. Пример классификации изображений. (Источник: towardsdatascience.com)
Существуют разные виды классификации изображений. Например, для работы с медицинскими изображениями можно использовать бинарную классификацию, чтобы разделить снимки на две группы — например, здоровые и больные. Другой вид — многоклассовая классификация. Она позволяет распределять изображения по многим группам, например классифицировать разных сельскохозяйственных животных: свиней, коз и коров. Или представь, что нужно распределить животных по группам и подгруппам: сначала на млекопитающих и птиц, а затем по видам, например львов, тигров, орлов и воробьев. Для этого лучше всего подойдет иерархическая классификация.
Обнаружение объектов#
Обнаружение объектов — это процесс выявления объектов на изображениях и видеокадрах и определения их местоположения с помощью компьютерного зрения. Он состоит из двух задач: локализации объектов, при которой вокруг объектов строятся ограничивающие рамки, и классификации объектов, которая определяет категорию каждого объекта. На основе аннотаций с ограничивающими рамками модель зрения может научиться распознавать шаблоны и признаки, характерные для каждой категории объектов, и предсказывать наличие и местоположение этих объектов на новых изображениях, которых она раньше не видела.

Рис. 3. Обнаружение объектов с помощью YOLOv8 для выявления игроков на футбольном поле.
Обнаружение объектов применяется во многих отраслях — от спорта до морской биологии. Например, в розничной торговле технология Amazon Just Walk Out использует обнаружение объектов для автоматизации оплаты: система распознает товары, которые покупатели берут с полок. Сочетание компьютерного зрения и данных с датчиков позволяет покупателям взять товары и уйти, не ожидая в очереди.
Вот как это работает:
- Камеры, установленные на потолке, записывают передвижения покупателей по магазину, а модели зрения обрабатывают эти видеозаписи в реальном времени.
- Обнаружение объектов помогает определить конкретный товар, который покупатель берет и кладет в корзину, чтобы соответствующим образом обновить виртуальную корзину.
- Датчики веса на полках повышают точность, обнаруживая, когда товар убирают или возвращают на место.
- Когда покупатель выходит из магазина, технологии обнаружения объектов и распознавания лиц можно использовать, чтобы подтвердить его выход, а затем автоматически списать оплату, например с банковской карты.
Семантическая сегментация и сегментация экземпляров#
Семантическая сегментация и экземплярная сегментация — это задачи компьютерного зрения, которые помогают разбивать изображения на значимые области. Семантическая сегментация классифицирует пиксели по их смыслу и считает все объекты одной категории единым объектом с общей меткой. Она подходит для разметки неисчисляемых объектов, например «неба» или «океана», а также скоплений объектов, таких как «листья» или «трава».
Сегментация экземпляров, в отличие от семантической сегментации, позволяет различать отдельные экземпляры одного класса, присваивая каждому обнаруженному объекту уникальную метку. Сегментацию экземпляров можно использовать для сегментации исчисляемых объектов, когда важны их количество и обособленность. Этот метод обеспечивает более точное распознавание и различение объектов.

Рис. 4. Пример семантической сегментации и сегментации экземпляров.
На примере беспилотных автомобилей проще понять разницу между семантической и экземплярной сегментацией. Семантическая сегментация отлично подходит для задач, требующих понимания содержимого сцены, и может использоваться в автономных транспортных средствах для классификации элементов дороги, таких как пешеходные переходы и дорожные знаки. Экземплярная сегментация, в свою очередь, позволяет автономным транспортным средствам различать отдельных пешеходов, автомобили и препятствия.
Оценка позы#
Оценка позы — это задача компьютерного зрения, направленная на обнаружение и отслеживание ключевых точек позы объекта на изображениях или видео. Чаще всего ее используют для оценки позы человека, отслеживая такие точки, как плечи и колени. Оценка позы человека помогает понимать и распознавать действия и движения, важные для самых разных приложений.

Рис. 5. Пример оценки позы с помощью YOLOv8.
Оценку позы можно использовать в спорте для анализа движений спортсменов. NBA применяет ее для изучения движений и позиций игроков во время матча. Отслеживая такие ключевые точки, как плечи, локти, колени и лодыжки, оценка позы дает подробную информацию о движениях игроков. Эти сведения помогают тренерам разрабатывать более эффективные стратегии, оптимизировать программы тренировок и вносить корректировки прямо во время матчей. Кроме того, данные помогают отслеживать усталость игроков и риск травм, улучшая их общее состояние и результаты.
Обнаружение объектов с ориентированными ограничивающими рамками#
Обнаружение объектов с ориентированными ограничивающими рамками (OBB) использует повёрнутые прямоугольники для точного распознавания и определения местоположения объектов на изображении. В отличие от стандартных ограничивающих рамок, которые выровнены по осям изображения, OBB поворачиваются в соответствии с ориентацией объекта. Поэтому они особенно полезны для объектов, расположенных не строго горизонтально или вертикально. Такие рамки позволяют точно определять и выделять повёрнутые объекты, предотвращая их перекрытие в плотных сценах.

Рис. 6. Пример обнаружения ориентированных ограничивающих рамок на аэрофотоснимке лодок с помощью YOLOv8.
В морском наблюдении выявление и отслеживание судов играет ключевую роль в обеспечении безопасности и управлении ресурсами. Обнаружение OBB позволяет точно определять местоположение судов, даже если они находятся близко друг к другу или ориентированы под разными углами. Это помогает контролировать морские пути, управлять движением судов и оптимизировать работу портов. Кроме того, такой подход может помочь при ликвидации последствий стихийных бедствий: он позволяет быстро выявлять и оценивать ущерб судам и инфраструктуре после ураганов, разливов нефти и других происшествий.
Отслеживание объектов#
До сих пор мы обсуждали задачи компьютерного зрения, связанные с изображениями. Отслеживание объектов — задача компьютерного зрения, которая позволяет следить за объектом на протяжении всех кадров видео. Сначала алгоритмы обнаружения находят объект в первом кадре, а затем непрерывно отслеживают его положение по мере движения в видео. Для точного отслеживания объектов применяются такие методы, как обнаружение объектов, извлечение признаков и прогнозирование движения.

Рис. 7. Отслеживание рыб с помощью YOLOv8.
Модели компьютерного зрения, такие как YOLOv8, можно использовать для отслеживания рыб в морской биологии. С помощью подводных камер исследователи могут наблюдать за передвижениями и поведением рыб в их естественной среде обитания. Сначала на первых кадрах обнаруживаются отдельные рыбы, а затем отслеживается их положение на протяжении всего видео. Отслеживание рыб помогает учёным изучать миграционные маршруты, социальное поведение и взаимодействие с окружающей средой. Эти данные также способствуют устойчивому рыболовству, помогая оценивать распространение и численность рыб.
В заключение о компьютерном зрении#
Компьютерное зрение активно меняет то, как мы используем технологии и взаимодействуем с миром. Используя модели глубокого обучения и сложные алгоритмы для понимания изображений и видео, компьютерное зрение помогает отраслям оптимизировать множество процессов. Благодаря таким задачам компьютерного зрения, как обнаружение и отслеживание объектов, можно создавать решения, которые раньше были невозможны. По мере развития технологий компьютерного зрения нас ждет еще больше инновационных приложений!
Давай учиться и развиваться вместе! Загляни в наш репозиторий GitHub, чтобы узнать о наших достижениях в области ИИ. Посмотри, как мы меняем такие отрасли, как беспилотные автомобили и сельское хозяйство, с помощью ИИ.
Автор
Комментарии
Задай вопрос, поделись результатами или помоги кому-нибудь.










