Можно ли использовать фильтр Gabor для обнаружения вмятин в автомобилях?


16

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

У меня есть изображение.

Сырое изображение

Используя некоторый код с сайта MathWorks File Exchange, я получил следующий вывод.

Обработанное изображение

что как-то не тот результат, который можно было бы ожидать. Это не хороший результат.

Мой сценарий выглядит следующим образом:

I = imread('dent.jpg');
I = rgb2gray(I);
[G, gabout] = gaborfilter1(I, 2, 4, 16, pi/2);
figure
imshow(uint8(gabout));

РЕДАКТИРОВАТЬ: применение другого кода к следующему изображению:

входное изображение

Выходное изображение после различных ориентаций фильтра Габора:

введите описание изображения здесь

Как изолировать этот ДЕНТ, который обнаружен должным образом?


1
Я = imread ('dent.jpg'); I = rgb2gray (I); [G, gabout] = gaborfilter1 (I, 2,4,16, pi / 2); фигура, imshow (uint8 (gabout)); Использовали следующие параметры
vini

Что ты спрашиваешь?
Андрей Рубштейн

2
Что такого в фильтре Габора, который заставляет вас думать, что он хорошо подходит для этой проблемы?
Nzbuu

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

Ответы:


21

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

Работа алгоритма в лабораторных условиях или на известных изображениях - это одно; разработка системы, которая будет точной и надежной для «естественных» изображений, таких как автомобили, видимые на парковке, вероятно, потребует команды, работающей в течение нескольких лет. Помимо основной проблемы создания алгоритма, существует множество других технических трудностей.

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

Проблемы для рассмотрения включают в себя следующее:

  1. Освещение (гораздо сложнее, чем кажется на первый взгляд)
  2. Ожидаемая трехмерная поверхность собранной внешней панели (например, из данных CAD)
  3. Критерии, характеризующие вмятину: площадь, глубина, профиль и т. Д.
  4. Критерии ложных негативов и ложных срабатываний
  5. Средства для сохранения данных вмятин и / или вмятин на карте модели автомобиля (или макета бабочки)
  6. Методология и устройство для измерения «истинных» вмятин: глубина, площадь и т. Д.
  7. Обширная база данных вмятин от случайной выборки транспортных средств
  8. Работа с различными цветами краски и отделки

1. Освещение Как правильно заметил Мартин Б., правильное освещение имеет решающее значение для этой проблемы. Даже при хорошем структурированном освещении вам будет трудно обнаружить небольшие вмятины вблизи характерных линий, промежутки между панелями, ручки и т. Д.

Википедия о структурированном освещении немного тонкая, но это начало понимания принципа: http://en.wikipedia.org/wiki/Structured_light

Светлые полосы можно использовать для обнаружения вмятин (вмятин) и вмятин (прыщей). Чтобы увидеть динь, вам понадобится относительное движение между источником света и автомобилем. Либо свет + камера движутся вместе относительно автомобиля, либо автомобиль движется мимо света + камеры.

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

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

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

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

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

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

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

4. Критерии обнаружения ошибок раннем этапе вы должны установить критерии для приемлемых ложных отрицательных и ложных положительных результатов. Даже если вы просто изучаете эту проблему как проект НИОКР и не собираетесь разрабатывать продукт, попробуйте определить критерии обнаружения.

ложно-отрицательный: вмятина присутствует, но не обнаружена

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

5. Сохраните данные и / или отобразите их . Вмятина характеризуется своей серьезностью и расположением на кузове автомобиля. Чтобы узнать его местоположение, вы должны решить проблему соответствия 2D-3D, упомянутую выше.

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

Это одна из сложных инженерных задач, которую необходимо решить для любого проекта по обнаружению дефектов на производстве: как измерить дефект и охарактеризовать его? если для этого существует стандарт, хорошо ли он соотносится с чем-то, что измеряет система контроля? если система проверки не обнаружит, что она "должна" нашла, то кто виноват?

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

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

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

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

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


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

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

1
В мастерских по ремонту вмятин используются светлые полосы, хотя их установка больше подходит для проверки человеком, чем для автоматической проверки: exceldent.wordpress.com/tag/door-ding-repair ncfixadent.com/services/paintless-dent-repair-pdr Для автоматизированной системы Вы хотите заблокировать весь посторонний свет, включая отражения от самого корпуса освещения. Кроме того, необходимо установить фокусировку камеры таким образом, чтобы был достигнут баланс между удержанием источника света в фокусе, так, чтобы края были резкими, и сохранением фокусировки на поверхности транспортного средства, чтобы видеть особенности транспортного средства.
Повторно

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

1
Сбор изображений вмятин и царапин может быть трудным. Скорее всего, это займет немного времени. В сети не так много подходящих картинок. Вы можете позвонить в авторемонтную мастерскую и спросить, можете ли вы сфотографировать автомобили, которые у них есть; взамен, вы могли бы магазин в ваших отчетах. Спросите друзей и коллег, можете ли вы сфотографировать их автомобили - возьмите с собой ручной флуоресцентный свет для освещения. Телефон Acamera будет в порядке. Лучше всего было бы получить вмятины и незапятнанные панели на свалке. Лучше всего иметь свои собственные образцы с самого начала, чтобы вы могли настроить освещение и т. Д.
Rethunk

9

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

Очень грубая схема простого подхода к обнаружению дефектов с использованием фильтров Габора может быть следующей:

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

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

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


0

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


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

Я хочу проголосовать за это, но это не настоящий ответ. Это должен быть комментарий.
эндолит
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.