Разбираемся, как работают приложения компьютерного зрения
Погрузись вместе с нами в приложения компьютерного зрения. Мы также пройдемся по различным задачам компьютерного зрения, таким как обнаружение объектов и сегментация.

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

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

Рис. 2. Пример классификации изображений. (источник: towardsdatascience.com)
Существуют разные типы классификации изображений. Например, при работе с медицинскими изображениями ты можешь использовать бинарную классификацию, чтобы разделить снимки на две группы, например здоровые или больные. Другой тип — многоклассовая классификация. Она помогает распределять изображения по многим группам, например классифицировать разных животных на ферме, таких как свиньи, козы и коровы. Или, допустим, ты хочешь классифицировать животных по группам и подгруппам — скажем, разделить животных на млекопитающих и птиц, а затем дополнительно на виды, такие как львы, тигры, орлы и воробьи; в таком случае лучшим выбором будет иерархическая классификация.
Детекция объектов#
Обнаружение объектов — это процесс идентификации и локализации объектов на изображениях и кадрах видео с помощью компьютерного зрения. Он состоит из двух задач: локализация объекта, при которой вокруг него рисуются ограничивающие рамки (bbox), и классификация объекта, определяющая его категорию. На основе разметки ограничивающих рамок модель зрения учится распознавать закономерности и признаки, характерные для каждой категории объектов, и предсказывать присутствие и местоположение этих объектов на новых, ранее не виденных изображениях.
Рис. 3. YOLOv8 Обнаружение объектов используется для поиска игроков на футбольном поле.
Обнаружение объектов находит множество применений в самых разных отраслях — от спорта до морской биологии. Например, в розничной торговле технология Amazon’s Just Walk Out использует обнаружение объектов для автоматизации оформления покупки путем распознавания товаров, которые берут покупатели. Сочетание компьютерного зрения и данных с датчиков позволяет покупателям забирать свои вещи и уходить, не стоять в очереди.
Давай разберемся, как это работает:
- Камеры, установленные на потолке, фиксируют перемещение покупателей по магазину, и это видео в режиме реального времени обрабатывается моделями зрения.
- Обнаружение объектов используется для определения точного товара, который покупатель берет с полки и кладет в корзину, чтобы соответствующим образом обновить его виртуальную корзину.
- Датчики веса на полках повышают точность, фиксируя изъятие или возвращение товара.
- Когда покупатель выходит из магазина, для подтверждения его ухода можно использовать обнаружение объектов и технологию распознавания лиц, а его платежные реквизиты, например данные кредитной карты, можно использовать для автоматического списания средств.
Семантическая сегментация и сегментация экземпляров#
Семантическая сегментация и сегментация экземпляров — это задачи компьютерного зрения, которые помогают разбивать изображения на значимые сегменты. Семантическая сегментация классифицирует пиксели на основе их семантического значения и рассматривает все объекты внутри категории как единую сущность с одинаковой меткой. Она подходит для маркировки неисчислимых объектов, таких как «небо» или «океан», либо скоплений вроде «листья» или «трава».
Сегментация экземпляров, с другой стороны, позволяет различать отдельные объекты одного класса, присваивая уникальную метку каждому обнаруженному объекту. Ты можешь использовать сегментацию экземпляров для сегментации исчисляемых объектов, где важно количество и независимость каждого из них. Это позволяет более точно идентифицировать и различать объекты.
Рис. 4. Пример семантической сегментации и сегментации экземпляров.
Мы можем четче понять разницу между семантической сегментацией и сегментацией экземпляров на примере, связанном с автомобилями с автопилотом. Семантическая сегментация отлично подходит для задач, требующих понимания содержимого сцены, и может использоваться в автономных транспортных средствах для классификации элементов дороги, таких как пешеходные переходы и дорожные знаки. Тем временем сегментация экземпляров может применяться в беспилотниках для различения отдельных пешеходов, транспортных средств и препятствий.
Оценка позы (pose estimation)#
Оценка позы — это задача компьютерного зрения, направленная на обнаружение и отслеживание ключевых точек поз объектов на изображениях или видео. Чаще всего она используется для оценки позы человека, причем к ключевым точкам относятся такие области, как плечи и колени. Оценка позы человека помогает нам понимать и распознавать действия и движения, которые критически важны для самых разных приложений.

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

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






