Понимание обнаружения краев в обработке изображений

Абирами Вина

5 минут чтения

25 августа 2025 г.

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

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

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

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

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

Рис. 1. Пример исходного изображения и результатов работы различных методов определения краев.(Источник)

В этой статье мы рассмотрим, что такое обнаружение краев, как оно работает и как применяется в реальном мире. Давайте начнем!

Концепции обнаружения краев

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

Вот некоторые причины, по которым происходят эти изменения пикселей:

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

Как работает распознавание по краям

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

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

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

Эволюция обнаружения краев и обработки изображений

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

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

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

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

Обнаружение краев и компьютерное зрение в XXI веке

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

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

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

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

Например, модели компьютерного зрения, такие как Ultralytics YOLO11, используют эти функции на основе свертки для выполнения сложных задач, таких как сегментация объектов. Это тесно связано с обнаружением краев, поскольку сегментация объектов требует точного определения границ каждого объекта на изображении. 

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

Рис. 3. Обзор использования YOLO11 и сегментации экземпляров.(Источник)

Алгоритмы и подходы к обнаружению краев

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

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

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

Определение краев по методу Собеля

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

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

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

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

Вот более подробный взгляд на то, как работает метод определения краев Собеля:

  • Использование двух фильтров 3×3: В этом методе используются две крошечные сетки 3×3, называемые фильтрами. Представьте их как трафареты, которые скользят по изображению в горизонтальном (x-направление) и вертикальном (y-направление) направлениях. Одна сетка предназначена для поиска горизонтальных краев, а другая - для вертикальных.

  • Вычисление градиента: Каждый фильтр определяет скорость изменения яркости и направление градиента. Сильное изменение означает возможный край.

  • Объединение результатов: Результаты по горизонтали и вертикали объединяются для определения общей силы и направления краев в каждом пикселе.

  • Обнаружение краев: Пиксели с большим значением градиента отмечаются как сильные края.

  • Выделение границ: Эти границы помогают определить форму объекта и разделить различные области изображения.
Рис. 4. Определение краев по Собелю позволяет выделить основные контуры входного изображения и получить карту краев. (Источник) 

Обнаружение краев

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

Вот краткий обзор того, как работает детектор краев Canny:

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

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

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

  • Окончательная очистка: Слабые ребра, соединенные с сильными, сохраняются; все остальные отбрасываются, оставляя только четкие, связанные границы.
Рис. 5. Исходное изображение и соответствующее ему выходное изображение после использования детектора краев Canny.(Источник)

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

Определение краев на основе градиента и на основе Гаусса

До сих пор мы рассматривали два примера определения краев - Собеля и Канни. Хотя оба они нацелены на поиск краев, они подходят к этой проблеме по-разному.

Градиентные методы (такие как Sobel, Prewitt и Scharr) обнаруживают края, ища резкие изменения яркости, известные как градиент. Они сканируют изображение и отмечают места, где это изменение сильнее всего. Эти методы просты, быстры и хорошо работают, когда изображения четкие. Однако они чувствительны к шуму - крошечные изменения яркости могут быть приняты за края.

Методы, основанные на гауссиане (например, Canny или Laplacian of Gaussian), добавляют дополнительный шаг для решения этой проблемы: сначала размывают изображение. Это сглаживание, часто выполняемое с помощью фильтра Гаусса, уменьшает небольшие колебания, которые могут создать ложные края. После сглаживания эти методы по-прежнему ищут резкие изменения яркости, но результаты получаются более чистыми и точными для зашумленных или низкокачественных изображений.

Рис. 6. Обнаружение краев на основе градиента и на основе Гаусса. Изображение автора.

Реальные приложения для обнаружения краев

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

Использование обнаружения краев для выявления трещин

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

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

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

Применение обнаружения краев в медицинской визуализации

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

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

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

Рис. 7. Канни (d-f) обеспечивает более четкие края, чем Собель (g-i), при увеличении шума.(Источник)

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

Плюсы обнаружения краев

Вот некоторые преимущества использования обнаружения краев и обработки изображений: 

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

  • Более точная локализация объектов: Благодаря точному определению границ объекта обнаружение краев улучшает способность систем определять местоположение и отслеживать объекты, что благоприятно сказывается на таких приложениях, как Vision AI в робототехнике и автономных транспортных средствах.

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

Ограничения при использовании обработки изображений для определения краев

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

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

  • Чувствительность к освещению: Перепады яркости, тени и отражения могут заставить детекторы краев неверно интерпретировать изменения освещения как границы объекта, что приводит к противоречивым результатам.

  • Никакой идентификации объектов: Хотя края показывают, где начинаются и заканчиваются объекты, они не показывают, что это за объекты. Чтобы присвоить обнаруженным краям значение или ярлыки, требуется дополнительная обработка.

Когда компьютерное зрение может быть использовано для определения краев

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

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

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

Использование Ultralytics YOLO11 для более точного определения краев

Вот некоторые ключевые задачи компьютерного зрения, поддерживаемые YOLO11, которые основываются на распознавании краев и выходят за их пределы:

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

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

  • Оценка позы: Задача состоит в определении положения, ориентации или позы объекта или человека, что помогает отслеживать движение или обнаруживать структурные изменения с течением времени.

  • Отслеживание объектов: Эта задача отслеживает объект по мере его перемещения по видеокадрам, обеспечивая последовательную идентификацию для точного долгосрочного наблюдения.

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

Обнаружение краев в инфраструктуре с помощью компьютерного зрения

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

Рис. 8. Пример использования YOLO11 для сегментации трещин.(Источник)

Основные выводы

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

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

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

Давайте вместе построим будущее
искусственного интеллекта!

Начните свое путешествие в будущее машинного обучения

Начните бесплатно
Ссылка копируется в буфер обмена