2 ноября 2020

Как люди учат машины видеть мир, или главное о компьютерном зрении

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

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

Как работает компьютерное зрение

Главная миссия компьютерного зрения – научить компьютеры видеть и понимать окружающую среду с помощью цифровых изображений и видео через три последовательных компонента:

  • сбор данных
  • обработка
  • анализ

Другими словами, конечная цель компьютерного зрения – научить машину принимать решения как человек.

Сбор данных

Получение изображений – это процесс преобразования аналогового мира вокруг нас в цифровую форму. Для этого используются встроенные веб-камеры, цифровые и зеркальные фотоаппараты, а также профессиональные 3D-камеры и лазерные дальномеры. Как правило, данные, полученные такими методами, необходимо дополнительно обрабатывать для более эффективного использования.

Обработка

Следующий компонент компьютерного зрения – обработка изображений низкого уровня. Этот тип информации необходим для выбора краев, точек или сегментирования изображений. Это все основные геометрические фигуры, из которых состоят объекты на изображениях.

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

К низкоуровневым алгоритмам обработки изображений относятся:

  • Edge detection
  • сегментация
  • классификация
  • обнаружение и сопоставление признаков

Edge detection включает в себя множество математических методов, направленных на определение точек на изображении. Этот алгоритм анализирует изображение и преобразует его в набор изогнутых отрезков линии. Edge detection используется для выделения наиболее важных частей изображения, чтобы уменьшить объем обрабатываемых данных.

Edge detection

Сегментация изображения обычно используется для определения местоположения объектов и их границ на изображениях. В процессе сегментации алгоритм присваивает метку каждому пикселю изображения, чтобы они имели определенные характеристики. Результат сегментации – это набор сегментов, охватывающих все части изображения или контуры, извлеченные из изображения.

Сегментация изображения

Классификация изображений предполагает извлечение информации о его содержании. Полученная информация может быть использована для построения тематических карт.

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

Анализ

Анализ и понимание изображений – это последний шаг в компьютерном зрении, который позволяет машинам принимать собственные решения. На этом этапе применяются высокоуровневые данные из изображений и результатов предыдущего шага. Примером высокоуровневого анализа может быть отображение трехмерной сцены, распознавание и отслеживание объектов.

Где это уже применяется?

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

Например, автономные автомобили используют комплекс камер, которые в режиме реального времени собирают данные об окружающем мире и передают на бортовой компьютер для обработки.

Waymo Chrysler Pacifica, Лос-Альтос, Калифорния, 2017 год

Дополненная реальность так же использует алгоритмы компьютерного зрения для распознавания поверхностей и их измерения для корректного размещения 3D-объектов.

Приложение IKEA с дополненной реальностью

Такая популярная в последние годы технология, как распознавание лиц также построена на базе компьютерного зрения. Ее применение достаточно широко, начиная от масок в Snapchat заканчивая системами безопасности на защищенных объектах.

Face ID в iPhone X

Восстановление и обработка изображений – еще одно из популярных применений компьютерного зрения. Современные алгоритмы используются в таких продуктах, как Adobe Photoshop для интеллектуальной обработки изображений, ретуши лиц или коррекции фона.

Проблемы компьютерного зрения

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

  • низкое качество исходных данных
  • ограниченные ресурсы
  • обработка контента в реальном времени

Но исследователи во всем мире продолжают работать над преодолением этих проблем и продолжают улучшать существующие алгоритмы.