машинное зрение
Машинное зрение (МВ) - это технология и методы, используемые для обеспечения автоматического контроля и анализа на основе изображений для таких приложений, как автоматический контроль, управление процессами и управление роботами, обычно в промышленности. Машинное зрение относится ко многим технологиям, программным и аппаратным продуктам, интегрированным системам, действиям, методам и опыту. Машинное зрение как дисциплина системной инженерии может считаться отличной от компьютерного зрения, разновидности компьютерной науки. Она пытается интегрировать существующие технологии новыми способами и применять их для решения проблем реального мира. Этот термин является преобладающим для обозначения этих функций в среде промышленной автоматизации, но также используется для обозначения этих функций в других средах управления транспортными средствами.
Общий процесс машинного зрения включает в себя планирование деталей требований и проекта, а затем создание решения. Во время работы процесс начинается с визуализации, затем следует автоматизированный анализ изображения и извлечение необходимой информации.
Определение
Определения термина "машинное зрение" различны, но все они включают технологию и методы, используемые для автоматизированного извлечения информации из изображения, в отличие от обработки изображений, где на выходе получается другое изображение. Извлеченная информация может быть простым сигналом "хорошая деталь/плохая деталь" или более сложным набором данных, таких как идентичность, положение и ориентация каждого объекта на изображении. Эта информация может быть использована в таких приложениях, как автоматический контроль и управление роботами и процессами в промышленности, для мониторинга безопасности и управления транспортными средствами.
Данная область включает в себя большое количество технологий, программных и аппаратных продуктов, интегрированных систем, действий, методов и опыта.
Машинное зрение - практически единственный термин, используемый для этих функций в приложениях промышленной автоматизации; этот термин менее универсален для этих функций в других средах, таких как безопасность и управление транспортными средствами. Машинное зрение как дисциплина системной инженерии может считаться отличной от компьютерного зрения, формы базовой информатики; машинное зрение пытается интегрировать существующие технологии новыми способами и применять их для решения проблем реального мира таким образом, который отвечает требованиям промышленной автоматизации и аналогичных областей применения.
Термин также используется в более широком смысле торговыми выставками и торговыми группами, такими как Automated Imaging Association и European Machine Vision Association. Это более широкое определение также охватывает продукты и приложения, чаще всего связанные с обработкой изображений. Основными областями применения машинного зрения являются автоматический контроль и управление промышленными роботами/процессами. См. глоссарий машинного зрения.Автоматическая инспекция и сортировка на основе визуализации
Основными областями применения машинного зрения являются автоматический контроль и сортировка на основе изображений и управление роботами; : 6-10 в этом разделе первое сокращенно называется "автоматический контроль". Общий процесс включает в себя планирование деталей требований и проекта, а затем создание решения. В этом разделе описывается технический процесс, происходящий во время эксплуатации решения.
Методы и последовательность работы
Первым шагом в последовательности действий при автоматической инспекции является получение изображения, обычно с помощью камер, объективов и освещения, которые были разработаны для обеспечения различий, необходимых для последующей обработки. Программные пакеты MV и разработанные в них программы затем используют различные методы цифровой обработки изображений для извлечения необходимой информации и часто принимают решения (например, о прохождении/непрохождении) на основе извлеченной информации.
Оборудование
Компоненты системы автоматического контроля обычно включают в себя освещение, камеру или другое устройство формирования изображения, процессор, программное обеспечение и устройства вывода.
Устройство формирования изображения
Устройство формирования изображения (например, камера) может быть либо отдельным от основного блока обработки изображений, либо совмещенным с ним, в этом случае комбинация обычно называется интеллектуальной камерой или интеллектуальным датчиком. Включение полной функции обработки в тот же корпус, что и камера, часто называют встроенной обработкой. При раздельной обработке соединение может быть выполнено со специализированным промежуточным оборудованием, пользовательским устройством обработки или захватом кадров в компьютере с использованием аналогового или стандартизированного цифрового интерфейса (Camera Link, CoaXPress).
В реализации MV также используются цифровые камеры, способные напрямую (без захвата кадров) подключаться к компьютеру через интерфейсы FireWire, USB или Gigabit Ethernet.
Хотя обычная (двумерная) визуализация в видимом свете наиболее часто используется в МВ, альтернативы включают в себя многоспектральную визуализацию, гиперспектральную визуализацию, визуализацию различных инфракрасных диапазонов, визуализацию линейного сканирования, 3D-изображение поверхностей и рентгеновскую визуализацию. Ключевыми различиями в МВ двумерной визуализации в видимом свете являются монохроматическое и цветное изображение, частота кадров, разрешение и то, является ли процесс визуализации одновременным по всему изображению, что делает его пригодным для движущихся процессов.
Хотя подавляющее большинство задач машинного зрения решается с помощью двумерной визуализации, приложения машинного зрения, использующие трехмерную визуализацию, являются растущей нишей в отрасли. Наиболее часто используемым методом трехмерной визуализации является триангуляция на основе сканирования, которая использует движение продукта или изображения в процессе визуализации. Лазер проецируется на поверхность объекта. В машинном зрении это достигается с помощью сканирующего движения, либо путем перемещения заготовки, либо путем перемещения камеры и лазерной системы формирования изображения. Линия рассматривается камерой под разными углами; отклонение линии отражает изменения формы. Линии из нескольких сканирований собираются в карту глубины или облако точек. Стереоскопическое зрение используется в особых случаях, когда уникальные особенности присутствуют в обоих видах пары камер. Другие 3D-методы, используемые для машинного зрения, - это время полета и метод решетки. Один из методов - системы на основе решетки с использованием псевдослучайного структурированного света, как в системе Microsoft Kinect около 2012 года.
Обработка изображений
После получения изображения оно подвергается обработке. Центральные функции обработки обычно выполняются CPU, GPU, FPGA или их комбинацией. Обучение и выводы глубокого обучения предъявляют более высокие требования к производительности обработки. Несколько этапов обработки обычно используются в последовательности, которая в итоге приводит к желаемому результату. Типичная последовательность может начинаться с таких инструментов, как фильтры, которые изменяют изображение, затем следует выделение объектов, затем извлечение (например, измерения, считывание кодов) данных из этих объектов, затем передача этих данных или сравнение их с целевыми значениями для создания и передачи результатов "прошел/не прошел".
Методы обработки изображений машинного зрения включают:
- Сшивание/регистрация: Объединение соседних двумерных или трехмерных изображений.
- Фильтрация (например, морфологическая фильтрация)
- Пороговая фильтрация: Пороговая фильтрация начинается с установки или определения значения серого цвета, которое будет полезно для следующих шагов. Затем это значение используется для разделения частей изображения, а иногда для преобразования каждой части изображения в черно-белое в зависимости от того, находится ли она ниже или выше этого значения серого цвета.
- Подсчет пикселей: подсчитывает количество светлых или темных пикселей.
- Сегментация: Разбиение цифрового изображения на несколько сегментов для упрощения и/или изменения представления изображения на более осмысленное и удобное для анализа.
- Обнаружение краев: поиск краев объекта
- Анализ цвета: Идентификация деталей, продуктов и предметов с помощью цвета, оценка качества по цвету и выделение особенностей с помощью цвета.
- Обнаружение и извлечение пятен: поиск на изображении дискретных пятен из связанных пикселей (например, черная дыра в сером объекте) в качестве ориентиров изображения.
- Обработка с помощью нейронных сетей / глубокого обучения / машинного обучения: взвешенное и самообучающееся принятие многовариантных решений. Примерно с 2019 года наблюдается значительное расширение этой области, использование глубокого обучения и машинного обучения для значительного расширения возможностей машинного зрения. Наиболее распространенным результатом такой обработки является классификация. Примерами классификации являются идентификация объектов, классификация идентифицированных объектов по принципу "прошел-не прошел" и OCR.
- Распознавание образов, включая сопоставление шаблонов. Поиск, сопоставление и/или подсчет определенных шаблонов. Это может включать определение местоположения объекта, который может быть повернут, частично скрыт другим объектом или отличаться по размеру.
- Считывание штрих-кодов, матричных данных и "двумерных штрих-кодов".
- Оптическое распознавание символов: автоматизированное считывание текста, например, серийных номеров
- Измерение/метрология: измерение размеров объекта (например, в пикселях, дюймах или миллиметрах).
- Сравнение с целевыми значениями для определения результата "прошел или не прошел" или "прошел/не прошел". Например, при проверке кода или штрих-кода считанное значение сравнивается с сохраненным целевым значением. При измерении измеренное значение сравнивается с надлежащим значением и допусками. При проверке буквенно-цифровых кодов значение OCR сравнивается с правильным или целевым значением. Для проверки на наличие дефектов измеренный размер дефектов может быть сравнен с максимальными значениями, допустимыми стандартами качества.
Выходные данные
Общим выходом автоматических систем контроля являются решения о прохождении/непрохождении контроля. Эти решения, в свою очередь, могут запускать механизмы, которые отбраковывают не прошедшие контроль товары или подают сигнал тревоги. Другие распространенные выходы включают информацию о положении и ориентации объекта для систем наведения роботов. Кроме того, типы выходов включают числовые данные измерений, данные, считанные с кодов и символов, подсчеты и классификацию объектов, отображение процесса или результатов, сохраненные изображения, сигналы тревоги от автоматизированных систем контроля пространства MV и сигналы управления процессом. Сюда же относятся пользовательские интерфейсы, интерфейсы для интеграции многокомпонентных систем и автоматизированный обмен данными.Глубокое обучение
Термин "глубокое обучение" имеет различные значения, большинство из которых можно применить к методам, используемым в машинном зрении уже более 20 лет. Однако использование этого термина в машинном зрении началось в конце 2010-х годов с появлением возможности успешного применения таких методов к целым изображениям в промышленном машинном зрении. Обычное машинное зрение обычно требует "физического" этапа решения для автоматического контроля с помощью машинного зрения для создания надежной простой дифференциации дефектов. Примером "простой" дифференциации является то, что дефекты темные, а хорошие части продукта светлые. Распространенной причиной, по которой некоторые приложения были невыполнимы, была невозможность достижения "простоты"; глубокое обучение устраняет это требование, по сути "видя" объект в большей степени, чем человек, что делает возможным выполнение таких автоматических приложений. Система обучается на большом количестве изображений на этапе обучения, а затем выполняет проверку во время выполнения, что называется "умозаключением".
Наведение роботов на основе изображений
Машинное зрение обычно предоставляет роботу информацию о местоположении и ориентации, чтобы робот мог правильно захватить продукт. Эта возможность также используется для управления движениями, которые проще, чем роботы, например, 1 или 2-осевой контроллер движения. Общий процесс включает планирование деталей требований и проекта, а затем создание решения. В этом разделе описывается технический процесс, который происходит во время работы решения. Многие из этапов процесса такие же, как и при автоматическом контроле, но с акцентом на предоставление информации о положении и ориентации в качестве результата.
Рынок
Еще в 2006 году один отраслевой консультант сообщил, что рынок МВ в Северной Америке составляет $1,5 млрд. Однако главный редактор журнала, посвященного МВ, утверждает, что "машинное зрение - это не отрасль как таковая", а скорее "интеграция технологий и продуктов, предоставляющих услуги или приложения, которые приносят пользу настоящим отраслям, таким как автомобилестроение или производство потребительских товаров, сельское хозяйство и оборона".