Машинное зрение и распознавание объектов. Машинное зрение

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

Что это такое

Технологии машинного зрения развиваются на протяжении последних десятилетий. Ученые, занимающиеся этим вопросом, хотят научить компьютер видеть и анализировать полученную информацию. У машинного зрения существует большое количество применений - такие технологии можно использовать, например, для получения 3D-моделей из фото и видеоматериалов в процессе создания цифровых карт, для создания архитектурных моделей зданий или в охранных системах для распознавания лиц. Но наибольшее влияние на повседневную жизнь миллионов людей окажет внедрение подходов машинного зрения в автомобилестроении.

Когда машина может видеть

Одно из наиболее очевидных применений технологий машинного зрения в автомобилях - это создание систем предупреждения аварийных ситуаций. Сейчас активно развивается технология Мобилай (Mobileye), которая используется в машинах BMW, General Motors, и, с недавного времени, Tesla Motors. Также свою технологию City Safety разработывает шведский автопроизводитель Volvo.

Эта система отслеживает траекторию движения машины и предупреждает водителя, если он слишком близко приблизится к впереди едущему автомобилю, или в случае его резкого торможения. При этом возможно не только получение предупреждения, но и автоматическое торможение в критических ситуациях - за это отвечают автономные системы экстренного торможения (Autonomous Emergency Braking), которые используются и в беспилотных автомобилях.

Согласно опубликованной в конце января 2016 года статистике Страхового института дорожной безопасности (Insurance Institute for Highway Safety, IIHS), использование автоматических систем экстренного торможения позволяет добиться снижения числа столкновений с движущимся впереди транспортом на 39%, а общего числа аварий - на 12%. Кроме того, Audi ссылается на данные, согласно которым за последние пять лет применение подобных систем позволило снизить число травм пассажиров на 38%.

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

Технологии машинного зрения также используются для создания систем навигации - с помощью камер и сенсоров машина может определять свое местоположение, сверяться с цифровой картой и прокладывать маршруты движения. Такой проект разрабатывают, к примеру, инженеры Mercedes-Benz (система Route Pilot).

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

Проблемы и перспективы

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

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

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

При этом существующие проблемы нельзя назвать нерешаемыми, и многие компании ведут разработки, которые позволят получить высокую точность обработки изображения с камеры автомобиля, без необходимости задействовать серьезные вычислительные мощности. Одна из таких технологий создается компанией Cognitive Technologies совместо с автопризводителем КАМАЗ в рамках проекта построения беспилотного грузовика - система использует принцип фовеального зрения. Это позволяет автомобилю строить «зоны интереса», формирующие виртуальный тоннель - в таком случае система может анализировать лишь 5-7% получаемого видеоизображения без падения качества самого анализа.

Технологии машинного зрения - перспективное направление, поэтому в подобные разработки инвестируют даже технологические компании, для которых это не основное направление бизнеса. К примеру, развитием технологии для создания 3D-автомобилей занимается провайдер телематических услуг «Лаборатория умного вождения». Российские разработчики активно взаимодействуют с зарубежными коллегами: на прошедшем в прошлом году во Франции мероприятии 3DV 2015 представители Smartdriving договорились о сотрудничестве со специалистами одного из американских технологических университетов.

Развитие технологий машинного зрения и собранная их разработчиками и сторонними организациями статистика позволяет утверждать, что уже в перспективе 5-10 лет они позволят серьезно повысить безопасность дорожного движения. Еще до того, как на дорогах начнут преобладать машины с автопилотом, системы умного торможения, освещения и картографии, позволят серьезно снизить число аварий и людей, пострадавших в них.

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

Технология распознавание лиц на основе биометрии лица является «вершиной» видеоаналитики: она ставит наиболее сложные задачи и задействует широкий спектр математических инструментов. С одной стороны, биометрическая система реализует функцию распознавания, устанавливая вероятностную связь изображения с идентификаторами людей, зарегистрированных в базе данных. С другой стороны, биометрическая система требует безукоризненной работы функций обнаружения и слежения.

Примеры успешно решаемых задач с помощью функций видеоаналитики:

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

Применение видеоаналитики

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

Функции и области применения

  • Распознавание объектов - Безопасность, подсчет объектов в торговле и на транспорте
  • Детектирование событий - Безопасность, контроль работы персонала
  • Анализ активности объектов - Повышение качества обслуживания

Коммерческое использование видеоаналитики

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

  • Поток людей и транспорта
  • Количество объектов в очереди и время задержки людей в очереди
  • Активность людей в выбранной зоне

Подсчёт людей и транспорта

Для обеспечения безопасности на производстве успешно применяются не только классические системы видеонаблюдения , но и такие технологии, как системы распознавания лиц и автомобильных номеров. Первая система распознавания лиц была установлена в 1998 году в лондонском районе Ньюэм. В 2000-х годах системы распознавания лиц позволяли идентифицировать лицо человека с точностью не менее 80%. Сегодня же этот показатель превышает 95%. Таким образом, машины научились распознавать изображения лучше людей!

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

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

Функции системы видеоаналитики в подсчете

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

Подсчет людей в коммерческих целях производится для расчета нескольких важных показателей эффективности бизнеса:

  • CPM (Cost Per Mile или Cost Per Thousand - объём продаж на тысячу посетителей)
  • SSF (Sales Per Square Foot или Sales Per Unit Area - число продаж на единицу площади)

Возможности для бизнеса

  • Прогнозирование продаж на основе данных о реальном потоке посетителей/покупателей
  • Оценка эффективности бизнеса, расчет коэффициента конверсии en:Conversion rate на основании статистических данных о посещаемости объекта
  • Привязка мотивационной системы сотрудников к коэффициенту конверсии en:Conversion rate
  • Анализ качества использования мощностей: торговой площади, работы персонала
  • Оценка эффективности рекламных компаний и вложений в PR и маркетинг на основании данных о посещаемости объекта
  • Снижение издержек на персонал, корректировка количества персонала в смене и графика работы объекта в соответствии интенсивностью потока посетителей

Автоматический анализ видеоизображения ограниченной зоны

Функции системы видеоаналитики в анализе периметра

  • Подсчет количества объектов в ограниченном периметре
  • Идентификация объектов, находящихся в периметре, по определенным признакам (определение персонала по униформе и т. п.)
  • Расчет времени задержки объектов в заданном периметре
  • Мониторинг активности объектов в заданном периметре (детектирование движения, фактов отсутствия в периметреи т. п.)

Возможности для бизнеса

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

Научные исследования в области видеоаналитики

Анализ видеоданных является подмножеством компьютерного зрения и искусственного интеллекта . Значительные научные исследования в этих областях ведутся в Университете Калгари, Университете Ватерлоо, Университете Кингстона, Технологическом институте Джорджии, Университете Карнеги-Меллона, Университете Западной Вирджинии и технологическом институте Британской Колумбии.

Системы видеонаблюдения

  • Системы видеонаблюдения Каталог продуктов и проектов
  • Системы видеонаблюдения: Конструктивные особенности камер
  • 10 способов повысить доходы с помощью скрытого видеонаблюдения
  • IP-видеонаблюдение розничными организациями для безопасности и предотвращения хищений

Развитие видеоаналитики в России

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

В России до недавних пор алгоритмы видеоаналитики применялись в основном для детектирования событий, подсчёта посетителей, распознавания опасных предметов и идентификации лиц с целью обеспечения безопасности на различных объектах: охраняемых территориях, транспорте (аэропорты, железнодорожный транспорт, распознавание автомобильных номеров для ГИБДД), а также на государственных объектах.

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

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

Что такое компьютерное зрение?

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

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

Мировой рынок компьютерного зрения

Чем машинное зрение отличается от компьютерного?

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

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

Задачи машинного зрения

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

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

Системы машинного зрения

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

Типовые системы машинного зрения состоят из камер, ПО, процессоров, источников света, приложений программного обеспечения и различных датчиков.

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

После того, как изображение обработано, в зависимости от состояния детали программа пропускает или не пропускает деталь по конвейеру дальше. То есть, если деталь повреждена - программное обеспечение подаст сигнал устройству для её отклонения, остановит производство или предупредит человека о том, что есть деталь с дефектом.

  • Системы видеонаблюдения - каталог систем и проектов
  • ИБ - Биометрическая идентификация - каталог систем и проектов

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

Исторические прорывы в машинном зрении

Компоненты системы машинного зрения

  • Одна или несколько цифровых или аналоговых камер (черно-белые или цветные) с подходящей оптикой для получения изображений
  • Программное обеспечение для изготовления изображений для обработки. Для аналоговых камер это оцифровщик изображений
  • Процессор (современный ПК c многоядерным процессором или встроенный процессор, например - ЦСП)
  • Программное обеспечение машинного зрения, которое предоставляет инструменты для разработки отдельных приложений программного обеспечения.
  • Оборудование ввода-вывода или каналы связи для доклада о полученных результатах
  • Умная камера: одно устройство, которое включает в себя все вышеперечисленные пункты.
  • Очень специализированные источники света (светодиоды, люминесцентные и галогенные лампы и т. д.)
  • Специфичные приложения программного обеспечения для обработки изображений и обнаружения соответствующих свойств.
  • Датчик для синхронизации частей обнаружения (часто оптический или магнитный датчик) для захвата и обработки изображений.
  • Приводы определенной формы используемые для сортировки или отбрасывания бракованных деталей.

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

Обработка изображений и анализ изображений в основном сосредоточены на работе с 2D изображениями, т.е. как преобразовать одно изображение в другое. Например, попиксельные операции увеличения контрастности, операции по выделению краёв, устранению шумов или геометрические преобразования, такие как вращение изображения. Данные операции предполагают, что обработка/анализ изображения действуют независимо от содержания самих изображений.

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

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

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

Таким образом, можно сделать вывод, что понятие «машинное зрение» на сегодняшний день включает в себя: компьютерное зрение, распознавание зрительных образов, анализ и обработка изображений и т.д.

Задачи машинного зрения

  • Распознавание
  • Идентификация
  • Обнаружение
  • Распознавание текста
  • Восстановление 3D формы по 2D изображениям
  • Оценка движения
  • Восстановление сцены
  • Восстановление изображений
  • Выделение на изображениях структур определенного вида, сегментация изображений
  • Анализ оптического потока

Распознавание


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

Идентификация


Распознается индивидуальный экземпляр объекта принадлежащего к какому-либо классу.
Примеры: идентификация определённого человеческого лица или отпечатка пальцев или автомобиля.

Обнаружение


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

Распознавание текста


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


Восстановление 3D формы по 2D изображениям осуществляется с помощью стереореконструкции карты глубины, реконструкции поля нормалей и карты глубины по закраске полутонового изображения, реконструкции карты глубины по текстуре и определения формы по перемещению

Пример восстановления 3D формы по 2D изображеню

Оценка движения

Несколько задач, связанных с оценкой движения, в которых последовательность изображений (видеоданные) обрабатываются для нахождения оценки скорости каждой точки изображения или 3D сцены. Примерами таких задач являются: определение трехмерного движения камеры, слежение, то есть следование за перемещениями объекта (например, машин или людей)

Восстановление сцены

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

Восстановление изображений


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

Восстановление изображений

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

Методы обработки изображений

Счетчик пикселей

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

Бинаризация


Преобразует изображение в серых тонах в бинарное (белые и черные пиксели).
Значения каждого пикселя условно кодируются, как «0» и «1». Значение «0» условно называют задним планом или фоном а «1» - передним планом.
Часто при хранении цифровых бинарных изображений применяется битовая карта, где используют один бит информации для представления одного пикселя.
Также, особенно на ранних этапах развития техники, двумя возможными цветами были чёрный и белый, что не является обязательным.

Сегментация

Используется для поиска и (или) подсчета деталей.
Цель сегментации заключается в упрощении и/или изменении представления изображения, чтобы его было проще и легче анализировать.
Сегментация изображений обычно используется для того, чтобы выделить объекты и границы (линии, кривые, и т. д.) на изображениях. Более точно, сегментация изображений - это процесс присвоения таких меток каждому пикселю изображения, что пиксели с одинаковыми метками имеют общие визуальные характеристики.
Результатом сегментации изображения является множество сегментов, которые вместе покрывают всё изображение, или множество контуров, выделенных из изображения. Все пиксели в сегменте похожи по некоторой характеристике или вычисленному свойству, например, по цвету, яркости или текстуре. Соседние сегменты значительно отличаются по этой характеристике.

Чтение штрих-кодов


Штрих-код - графическая информация, наносимая на поверхность, маркировку или упаковку изделий, представляющая возможность считывания её техническими средствами - последовательность чёрных и белых полос либо других геометрических фигур.
В машинном зрении штрих-коды используют для декодирования 1D и 2D кодов, разработанных для считывания или сканирования машинами.

Оптическое распознавание символов

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

Моя программа, написанная на LabView по работе с изображениями.

Использовано компьютерное зрение для неразрушающего контроля качества сверхпроводящих материалов.

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

Постановка проблемы. На сегодняшний день, главной задачей для проектируемых комплексов машинного зрения остаётся обнаружение, распознавание, идентификация и квалификация объектов потенциального риска, находящихся в случайном месте в зоне оперативной ответственности комплекса. Существующие на данный момент программные продукты, направленные на решение перечисленных задач обладают рядом существенных недостатков, а именно: значительная сложность, связанная с высокой детализацией оптических образов; высокая потребляемая мощность и достаточно узкий спектр возможностей. Расширение задач обнаружения объектов потенциального риска, до области поиска случайных объектов в случайных ситуациях, находящихся в случайном месте, имеющимися программными продуктами не возможно, даже с задействованием суперкомпьютера.

Цель. Разработка универсальной программы обработки изображений оптического источника, с возможностью потокового анализа данных, то есть программа должна быть лёгкой и быстрой для того, чтобы её можно было записать на малогабаритное ЭВМ устройство.

Задачи:

  • разработка математической модели программы;
  • написание программы;
  • опробирование программы в условиях лабораторного эксперимента, с полной подготовкой и проведением эксперимента;
  • исследование возможности применения программы в смежных областях деятельности.

Актуальность программы определяется:

  • высокой стоимостью профессиональных программ обработки визуальной информации.

Анализ актуальности разработки программы.

  • отсутствием на рынке программного обеспечения программ обработки изображений с выводом подробного анализа инженерных составляющих объектов;
  • постоянно растущими требованиями к качеству и скорости получения визуальной информации, резко повышающими востребованность программ обработки изображений;
  • существующей потребность в программах высокой производительности, надежных и простых с точки зрения пользователя;
  • существует потребность программ высокой производительности и простого управления, чего добиться в наше время крайне сложно. Для примера я взял Adobe Photoshop. Данный графический редактор обладает гармоничным сочетанием функциональности и простоты использования для рядового пользователя, но в данной программе невозможно работать со сложными инструментами по обработке изображения (например, анализ изображения путём построения математической зависимости (функции) или же интегральной обработкой изображений);
  • высокой стоимостью профессиональных программ обработки визуальной информации. Если программное обеспечение качественно, то цена на него крайне высока, вплоть до отдельных функции того или иного набора программ. На графике ниже представлена зависимость цены/качества простых аналогов программы.

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

При создании композиционных сверхпроводников на основе Nb3Sn варьируется объемное соотношение бронзы и ниобия, размер и количество волокон в нем, равномерность их распределения по сечению бронзовой матрицы, наличие диффузионных барьеров и стабилизирующих материалов. При заданной объемной доле ниобия в проводнике увеличение количества волокон приводит, соответственно, к уменьшению их диаметра. Это ведет к заметному возрастанию поверхности взаимодействия Nb / Cu-Sn, что в значительной степени ускоряет процесс нарастания сверхпроводящей фазы. Такое увеличение количества сверхпроводящей фазы при повышении числа волокон в проводнике обеспечивает возрастание критических характеристик сверхпроводника. В связи с этим необходимо наличие инструмента для контроля объемной доли сверхпроводящей фазы в конечном продукте (композиционном сверхпроводнике).

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

Блок-диаграмма программы


Описание этапов исследования.

1 этап. Пробоподготовка: резка композиционного сверхпроводника на электроэрозионном станке; запрессовка образца в пластмассовую матрицу; полировка образца до зеркального состояния; травление образца для выделения волокон ниобия на бронзовой матрице. Получены образцы запрессованных композиционных сверхпроводниковых образцов;

2 этап. Получение изображений: получение металлографических изображений на сканирующем электронном микроскопе.

3 этап. Обработка изображений: создание инструмента для определения объемной доли сверхпроводящей фазы на металлографическом изображении; набор статистически значимых данных на конкретном типе образцов. Созданы математические модели различных инструментов по обработке изображений; создана программная разработка для оценки объемной доли сверхпроводящий фазы; программа была облегчена путём соединения нескольких математических функций в одну; было получено среднее значение объемной доли волокон ниобия в бронзовой матрице 24.7±0,1 %. Низкий процент отклонения свидетельствует о высокой повторяемости структуры композиционного провода.

Электронномикроскопическое изображения композиционных сверхпроводников

Методы обработки изображений в программе.

  • Идентификация - распознается индивидуальный экземпляр объекта, принадлежащего к какому-либо классу.
  • Бинаризация – процесс перевода цветного (или в градациях серого) изображения в двухцветное черно-белое.
  • Сегментация - это процесс разделения цифрового изображения на несколько сегментов (множество пикселей, также называемых суперпикселями).
  • Эрозия – сложный процесс, при выполнении которого структурный элемент проходит по всем пикселам изображения. Если в некоторой позиции каждый единичный пиксел структурного элемента совпадет с единичным пикселом бинарного изображения, то выполняется логическое сложение центрального пиксела структурного элемента с соответствующим пикселом выходного изображения.
  • Дилатация - свертка изображения или выделенной области изображения с некоторым ядром. Ядро может иметь произвольную форму и размер. При этом в ядре выделяется единственная ведущая позиция, которая совмещается с текущим пикселем при вычислении свертки.

Формулы работы программы

Формула бинаризации (метод Оцу):


Формула эрозии:

Формула дилатации:

Схема дилатации и эрозии

Интерфейс программы

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

Machine vision is the study of methods and techniques whereby artificial vision systems can be constructed and usefully employed in practical applications. As such, it embraces both the science and engineering of vision.

Its study includes not only the software but also the hardware environment and image acquisition techniques needed to apply it. As such, it differs from computer vision, which appears from most books on the subject to be the realm of the possible design of the software, without too much attention on what goes into an integrated vision system (though modern books on computer vision usually say a fair amount about the "nasty realities" of vision, such as noise elimination and occlusion analysis).

Машинное зрение в настоящее время.

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

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

Основные задачи машинного зрения

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

Однако машинное зрение позволяет решать множество задач, которые условно можно разделить на четыре группы (Рис.2) [Лысенко, 2007] :

Рис.2.

· Распознавание положения

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

Измерение

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

Инспекция

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

Идентификация

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

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

Ниже приведена структура рыночного спроса по проектной тематике (Рис.3) [Бобровский, 2004] :


Рис.3.

· 50% всех систем машинного зрения эксплуатируются в задачах контроля качества, т.е. решают инспекционные задачи машинного зрения. Это прежде всего визуальный контроль за процессом сборки, цветом и качеством поверхности продукции, внешним видом и чистотой упаковки, правильностью и разборчивостью этикеток, уровнем жидкости во всевозможной таре и т. д. Примерно 10% этих задач выполняются системами трехмерного зрения. Отдельная область использования систем машинного зрения на производстве - проведение всевозможных визуальных измерений параметров технологических процессов и, в частности, определение размеров предметов, т.е. решение задач измерения .

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

· 17% всех продаж систем машинного зрения составляют широко известные и хорошо работающие OCR/OCV-системы распознавания печатных символов и штрих-кодов. Решение задачи идентификации .

· Рынок систем машинного зрения для непроизводственных (развлекательных, бытовых, исследовательских) роботов составляет 13%.

Основные области применения машинного зрения

В статье Бобровского «Когда машины прозреют» [Бобровский, 2004] представлена следующая статистика областей, в которых востребованы системы машинного зрения:

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

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

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

· Отмечается рост интереса к системам машинного зрения со стороны нанотехнологических фирм, биотехнологических компаний и в сфере медицины (автоматический анализ медицинских изображений - рентген, томография, УЗИ)

· Востребовано машинное зрение и в области охранных систем (идентификация личности, детекторы движения, распознавание и отслеживание движущихся объектов, распознавание автомобильных номеров и т.д.);

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

· Машинное зрение применяется в системах распознавания рукописного и печатного текста.

Здесь используется замечательный пример обнаружения веб-камерой лица человека и определения его положения в пространстве. Человек буквально может посмотреть на изображение с другой стороны. Давайте разберемся, каким образом это происходит.

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

  1. Форму объекта (круг, квадрат, треугольник…);
  2. Цвет определяемого объекта;
  3. Размер объекта и положение его относительно других объектов.

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

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

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

Форма лица у всех людей разная, хотя есть определенные типы этой формы.

Цвет кожи человека, личные особенности, такие как прическа, украшения, и тому подобное.

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

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

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

Работать с такой технологией легко и просто. Открывается множество интересных решений для работы с изображением, которые можно использовать как в повседневной жизни, так и в больших проектах.