Машинное зрение ( MV ) — это технология и методы, используемые для обеспечения автоматического контроля и анализа на основе изображений для таких приложений, как автоматический контроль, управление процессами и управление роботами, обычно в промышленности. Машинное зрение относится ко многим технологиям, программным и аппаратным продуктам, интегрированным системам, действиям, методам и знаниям. Машинное зрение как дисциплину системной инженерии можно считать отличной от компьютерного зрения , формы информатики . Он пытается по-новому интегрировать существующие технологии и применить их для решения проблем реального мира. Этот термин является распространенным для этих функций в средах промышленной автоматизации, но также используется для этих функций в других средах управления транспортными средствами.
Общий процесс машинного зрения включает в себя детальное планирование требований и проекта, а затем создание решения. Во время выполнения процесс начинается с создания изображения, за которым следует автоматический анализ изображения и извлечение необходимой информации.
Определения термина «Машинное зрение» различаются, но все они включают технологию и методы, используемые для автоматического извлечения информации из изображения, в отличие от обработки изображения , при которой на выходе получается другое изображение. Извлеченная информация может представлять собой простой сигнал «хорошая/плохая часть» или, более того, сложный набор данных, таких как идентичность, положение и ориентация каждого объекта на изображении. Эту информацию можно использовать для таких приложений, как автоматический контроль, управление роботами и процессами в промышленности, мониторинг безопасности и управление транспортными средствами. [1] [2] [3] Эта область охватывает большое количество технологий, программных и аппаратных продуктов, интегрированных систем, действий, методов и опыта. [3] [4] Машинное зрение — практически единственный термин, используемый для обозначения этих функций в приложениях промышленной автоматизации; этот термин менее универсален для этих функций в других средах, таких как безопасность и управление транспортными средствами. Машинное зрение как дисциплину системной инженерии можно считать отличной от компьютерного зрения , формы фундаментальной информатики ; машинное зрение пытается по-новому интегрировать существующие технологии и применить их для решения реальных проблем таким образом, чтобы это отвечало требованиям промышленной автоматизации и аналогичных областей применения. [3] : 5 [5] Этот термин также используется в более широком смысле на выставках и торговых группах, таких как Ассоциация автоматизированной обработки изображений и Европейская ассоциация машинного зрения. Это более широкое определение также охватывает продукты и приложения, чаще всего связанные с обработкой изображений. [4] Основными сферами применения машинного зрения являются автоматический контроль и управление промышленными роботами /процессами. [6] [7] : 6–10 [8] В последнее время термины «компьютерное зрение» и «машинное зрение» стали более сближаться. [9] : 13 См. словарь машинного зрения .
Основными сферами применения машинного зрения являются автоматический осмотр и сортировка на основе изображений, а также управление роботами; [6] [7] : 6–10 в этом разделе первое сокращенно обозначается как «автоматическая проверка». Общий процесс включает в себя детальное планирование требований и проекта, а затем создание решения. [10] [11] В данном разделе описан технический процесс, происходящий в процессе эксплуатации решения.
Первым шагом в последовательности операций автоматического контроля является получение изображения , обычно с использованием камер, объективов и освещения, которое было разработано для обеспечения различения, необходимого для последующей обработки. [12] [13] Пакеты программного обеспечения MV и программы, разработанные в них, затем используют различные методы цифровой обработки изображений для извлечения необходимой информации и часто принимают решения (например, «прошел/не прошел») на основе извлеченной информации. [14]
Компоненты системы автоматического контроля обычно включают освещение, камеру или другой формирователь изображения, процессор, программное обеспечение и устройства вывода. [7] : 11–13
Устройство формирования изображения (например, камера) может быть либо отделено от основного блока обработки изображений, либо объединено с ним, и в этом случае такая комбинация обычно называется интеллектуальной камерой или интеллектуальным датчиком. [15] [16] Включение всех функций обработки в тот же корпус, что и камера, часто называют встроенной обработкой. [17] При разделении соединение может быть выполнено со специализированным промежуточным оборудованием, специальным устройством обработки или устройством захвата кадров на компьютере с использованием аналогового или стандартизированного цифрового интерфейса ( Camera Link , CoaXPress ). [18] [19] [20] [21] В реализациях MV также используются цифровые камеры, способные к прямому подключению (без устройства захвата кадров) к компьютеру через интерфейсы FireWire , USB или Gigabit Ethernet . [21] [22]
В то время как обычная визуализация (2D в видимом свете) чаще всего используется при МВ, альтернативы включают мультиспектральную визуализацию , гиперспектральную визуализацию , визуализацию в различных инфракрасных диапазонах, [23] линейное сканирование, трехмерную визуализацию поверхностей и рентгеновскую визуализацию. [6] Ключевыми различиями в визуализации MV 2D в видимом свете являются монохромность и цвет, частота кадров , разрешение, а также то, является ли процесс визуализации одновременным по всему изображению, что делает его подходящим для движущихся процессов. [24]
Хотя подавляющее большинство приложений машинного зрения решаются с использованием двумерных изображений, приложения машинного зрения, использующие 3D-изображения, занимают растущую нишу в отрасли. [25] [26] Наиболее часто используемый метод трехмерной визуализации — это триангуляция на основе сканирования, в которой используется движение продукта или изображения во время процесса визуализации. Лазер проецируется на поверхности объекта. В машинном зрении это достигается с помощью сканирующего движения либо путем перемещения заготовки, либо путем перемещения камеры и системы лазерной визуализации. Линия просматривается камерой под другим углом; отклонение линии представляет собой изменения формы. Линии нескольких сканирований собираются в карту глубины или облако точек. [27] Стереоскопическое зрение используется в особых случаях, связанных с уникальными особенностями, присутствующими в обоих изображениях пары камер. [27] Другие 3D-методы, используемые для машинного зрения, основаны на времени полета и сетке. [27] [25] Одним из методов являются системы на основе массивов сеток с использованием системы псевдослучайного структурированного освещения, которая использовалась в системе Microsoft Kinect примерно в 2012 году. [28] [29]
После получения изображения оно обрабатывается. [20] Функции центральной обработки обычно выполняются центральным процессором , графическим процессором , FPGA или их комбинацией. [17] Обучение глубокому обучению и логический вывод предъявляют более высокие требования к производительности обработки. [30] Обычно используются несколько этапов обработки в последовательности, которая в конечном итоге приводит к желаемому результату. Типичная последовательность может начинаться с таких инструментов, как фильтры, которые изменяют изображение, за которым следует извлечение объектов, затем извлечение (например, измерения, считывание кодов) данных из этих объектов с последующей передачей этих данных или сравнением их с целевыми значениями для создавать и сообщать результаты «прошел/не прошел». Методы обработки изображений машинного зрения включают в себя;
Обычным результатом работы автоматических систем проверки является принятие решения о прохождении/несоответствии. [14] Эти решения, в свою очередь, могут активировать механизмы, которые отклоняют неудачные элементы или подают сигнал тревоги. Другие распространенные выходные данные включают информацию о положении и ориентации объекта для систем наведения робота. [6] Кроме того, типы выходных данных включают числовые данные измерений, данные, считанные из кодов и символов, подсчеты и классификацию объектов, отображение процесса или результатов, сохраненные изображения, сигналы тревоги от автоматизированных систем космического мониторинга среднего напряжения и сигналы управления процессом . [10] [13] Сюда же относятся пользовательские интерфейсы, интерфейсы для интеграции многокомпонентных систем и автоматизированного обмена данными. [42]
Термин «глубокое обучение» имеет разные значения, большинство из которых применимо к методам, используемым в машинном зрении более 20 лет. Однако использование этого термина в машинном зрении началось в конце 2010-х годов, когда появилась возможность успешно применять такие методы ко всем изображениям в области промышленного машинного зрения. [43] Обычное машинное зрение обычно требует «физического» этапа решения для автоматического контроля машинного зрения, чтобы создать надежную и простую дифференциацию дефектов. Примером «простой» дифференциации является то, что дефекты темные, а хорошие части продукта светлые. Распространенная причина, по которой некоторые приложения были невыполнимы, заключалась в том, что невозможно было достичь «простого»; глубокое обучение устраняет это требование, по сути «видя» объект больше, чем человек, что делает возможным выполнение этих автоматических приложений. [43] Система обучается на большом количестве изображений на этапе обучения, а затем выполняет проверку во время использования, что называется «выводом». [43]
Машинное зрение обычно предоставляет роботу информацию о местоположении и ориентации, чтобы робот мог правильно схватить продукт. Эта возможность также используется для управления движением, которое проще, чем у роботов, например, с помощью 1- или 2-осевого контроллера движения. [6] Общий процесс включает в себя детальное планирование требований и проекта, а затем создание решения. В этом разделе описан технический процесс, происходящий в процессе эксплуатации решения. Многие этапы процесса такие же, как и при автоматическом контроле, за исключением того, что в результате основное внимание уделяется предоставлению информации о положении и ориентации. [6]
Совсем недавно, в 2006 году, один отраслевой консультант сообщил, что рынок MV в Северной Америке составляет 1,5 миллиарда долларов. [44] Однако главный редактор профессионального журнала MV заявил, что «машинное зрение — это не отрасль как таковая», а скорее «интеграция технологий и продуктов, которые предоставляют услуги или приложения, которые приносят пользу настоящим отраслям, таким как автомобилестроение или производство потребительских товаров, сельское хозяйство и оборона». [4]