Системы компьютерного зрения: современные задачи и методы

Системы компьютерного зрения: современные задачи и методы

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

Трудная проблема зрения

Интерес к компьютерному зрению возник одним из первых в области искусственного интеллекта наряду с такими задачами, как автоматическое доказательство теорем и интеллектуальные игры. Даже архитектура первой искусственной нейронной сети — перцептрона — была предложена Фрэнком Розенблаттом, исходя из аналогии с сетчаткой глаза, а ее исследование проводилось на примере задачи распознавания изображений символов.

Значимость проблемы зрения никогда не вызывала сомнения, но одновременно ее сложность существенно недооценивалась. К примеру, легендарным по своей показательности стал случай, когда в 1966 г. один из основоположников области искусственного интеллекта, Марвин Минский, даже не сам собрался решить проблему искусственного зрения, а поручил это сделать одному студенту за ближайшее лето [1]. При этом на создание программы, играющей на уровне гроссмейстера в шахматы, отводилось значительно большее время. Однако сейчас очевидно, что создать программу, обыгрывающую человека в шахматы, проще, чем создать адаптивную систему управления с подсистемой компьютерного зрения, которая бы смогла просто переставлять шахматные фигуры на произвольной реальной доске.

Прогресс в области компьютерного зрения определяется двумя факторами: развитие теории, методов, и развитие аппаратного обеспечения. Долгое время теория и академические исследования опережали возможности практического использования систем компьютерного зрения. Условно можно выделить ряд этапов развития теории.

  • К 1970-м годам сформировался основной понятийный аппарат в области обработки изображений, являющийся основой для исследования проблем зрения. Также были выделены основные задачи, специфические для машинного зрения, связанные с оценкой физических параметров сцены (дальности, скоростей движения, отражательной способности поверхностей и т. д.) по изображениям, хотя ряд этих задач все еще рассматривался в весьма упрощенной постановке для «мира игрушечных кубиков».
  • К 80-м сформировалась теория уровней представления изображений в методах их анализа. Своего рода отметкой окончания этого этапа служит книга Дэвида Марра «Зрение. Информационный подход к изучению представления и обработки зрительных образов».
  • К 90-м оказывается сформированным систематическое представление о подходах к решению основных, уже ставших классическими, задач машинного зрения.
  • С середины 90-х происходит переход к созданию и исследованию крупномасштабных систем компьютерного зрения, предназначенных для работы в различных естественных условиях.
  • Текущий этап наиболее интересен развитием методов автоматического построения представлений изображений в системах распознавания изображений и компьютерного зрения на основе принципов машинного обучения.

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

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

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

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

В первую очередь, общеприменимые алгоритмы обработки изображений стали доступны для спецпроцессоров — цифровых сигнальных процессоров (ЦСП) и программируемых логических интегральных схем (ПЛИС), нередко совместно использовавшихся и находящих широкое применение до сих пор в бортовых и промышленных системах.

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

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

  • подсистему формирования изображений (которая сама может включать разные компоненты, например объектив и ПЗС- или КМОП-матрицу);
  • вычислитель;
  • алгоритмы анализа изображений, которые могут реализовываться программно на процессорах общего назначения, аппаратно в структуре вычислителя и даже аппаратно в рамках подсистемы формирования изображений.

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

 

Читать статью полностью в формате PDF.