Что такое машинное зрение
В самом общем виде система машинного зрения преобразует данные с устройств захвата изображения и выполняет дальнейшие операции на основе этих данных. Это один из самых перспективных способов автоматизации, сочетающий компьютерные технологии и робототехнику.
Сегодня задачи для машинного зрения чётко сформулированы в медицине и биотехнологиях, в военной отрасли и в автомобильной промышленности: ими занимаются исследовательские центры и робототехнические компании. Но потенциальное поле применения гораздо шире — практически любая сфера, где решения принимаются «на глаз».
- Медицина. Обработка изображений и видео помогает точнее ставить диагнозы.
- Промышленность. Частичный или полный отказ от ручных операций снижает себестоимость продукции и сводит к минимуму влияние «человеческого фактора».
- Транспорт и беспилотные аппараты. Камера определяет положение аппарата относительно маркеров, стен и препятствий.
Из чего состоит система
Любая система машинного зрения включает три основных компонента:
- подсистему формирования изображений (камера, оптика, освещение);
- вычислительную систему;
- алгоритмы анализа изображений.
Развитие идёт по всем трём направлениям. Но когда качественные камеры стали доступны не только промышленности и военным, а вычислительные мощности позволяют выполнять миллиарды операций в секунду, узким местом становится третий пункт: эффективные алгоритмы анализа получаемых изображений.
Главная трудность — распознавание
Одна из самых сложных задач при применении машинного зрения в робототехнике — распознавание, то есть обнаружение и идентификация объектов. Её решение позволяет оценить положение объекта относительно устройства захвата изображения: понять, где он находится и как повёрнут.
Практика показывает, почему это трудно. Освещение меняется, объект частично закрыт, «белое» и «чёрное» оказываются понятиями относительными, а с камеры иногда приходят повреждённые кадры. Подробный пример такой борьбы за надёжность — в отчёте о полётах по маркерам.
Почему именно камера
Перспективное направление — получать и обрабатывать данные с пассивных устройств захвата, к которым относится камера. В отличие от набора разнородных датчиков, такой подход приближает работу системы к тому, как зрительные задачи решает человек: и робот, и человек получают на входе одну и ту же зрительную информацию. Различаются только алгоритмы и вычислительные мощности, которые используются для её интерпретации.
Это позволяет внедрять роботов с машинным зрением непосредственно в обычную для человека среду, а не только в жёстко детерминированные производственные условия. Сравнение камеры с другими датчиками приведено в отдельном руководстве, а о том, как две камеры дают оценку расстояния, рассказывает статья про стереозрение.
Ранний опыт: Lego и веб-камера
Одним из первых наглядных опытов считается демонстрация 2001 года. Команда Robodem из Сергиева Посада вместе с немецкой компанией Neuropower построила на основе стандартного конструктора Lego и простой веб-камеры робота, который собирал логотип компании из девяти случайно разбросанных по столу кубиков. Комплекс показывали на международной выставке в Вене, а авторов пригласили в передачу Computer Club западногерманского канала WDR.
Конкурс «Летающие роботы» 2013 года
Ярче всего преимущества камеры проявились на конкурсе «Летающие роботы» компании КРОК в 2013 году. Задача: взлететь со стартового маркера, автономно пройти лабиринт с препятствиями, вернуться и приземлиться в точке взлёта. По сообщению участников и прессы, из 536 заявок на старте задание выполнил один аппарат — команды Robodem. Датчики, сонары и лидары сознательно исключили: аппарат ориентировался только по изображению камеры.