Найти ребра объектов на изображениях с помощью метода Собеля, Предвитта, Робертса или Канни
Computer Vision Toolbox/Анализ и совершенствование

Блок Ребро Detection находит ребра объекта в входе изображении. Блок поддерживает четыре метода: Собель, Предвитт, Робертс и Кэнни. Первые три метода находят ребра путем аппроксимации градиентной величины изображения. Блок свертывает матрицу входа с помощью ядра Собеля, Предвитта или Робертса соответственно и выводит получившиеся градиентные компоненты изображения. Кроме того, блок выводит бинарное изображение обнаружений ребра путем порога величины градиента.
Метод Канни вычисляет градиент входа изображения с помощью производной Гауссова фильтра. Затем он находит ребра, ища локальные максимумы градиента. Этот метод использует два порога, чтобы обнаружить сильные и слабые ребра. Слабые ребра являются частью выхода, только если они соединены с сильными ребрами. Блок выводит бинарное изображение обнаружений ребра для этого метода.
I - Входное изображениеВходное изображение, заданное как матрица значений интенсивности.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
Примечание
Метод Canny не поддерживает 8-битные, 16-битные или 32-битные целые числа с фиксированной точкой со знаком или 8-битные, 16-битные или 32-битные беззнаковые целые числа.
Th - ПорогЗадайте порог в виде скаляра или двухэлементного вектора, чтобы обнаружить ребра от градиента. Тип данных этого значения должен совпадать с типом данных входного изображения. Для метода обнаружения ребра Канни порог должен быть двухэлементным вектором в области значений [0 1]. Для других методов порог является скаляром.
Чтобы включить этот порт:
Установите параметр Method равным Canny. Кроме того, установите параметр Method равным Sobel, Prewitt, или Roberts, а также установите параметр Output type равным Binary image или Binary image and gradient components.
Выберите User-defined threshold.
Установите параметр Threshold source равным Input port.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
Примечание
Метод Canny не поддерживает 8-битные, 16-битные или 32-битные целые числа с фиксированной точкой со знаком или 8-битные, 16-битные или 32-битные беззнаковые целые числа.
Edge - Обнаружение реберОбнаружения ребер, возвращенные как бинарное изображение. Пиксели со значением 1 представление ребра пикселей.
Этот порт всегда активируется, когда вы устанавливаете параметр Method равным Canny. Чтобы включить этот порт для Sobel, Prewitt, или Roberts методы, установите параметр Output type равным Binary image или Binary image and gradient components.
Типы данных: Boolean
Gv - Градиентные отклики на вертикальные ребраМатрица градиентных характеристик на вертикальные ребра.
Чтобы включить этот порт, установите следующие параметры:
Method — Sobel или Prewitt
Output type — Gradient components или Binary image and gradient components
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
Gh - Градиентные отклики на горизонтальные ребраМатрица градиентных характеристик на горизонтальные ребра.
Чтобы включить этот порт, установите следующие параметры:
Method — Sobel или Prewitt
Output type — Gradient components или Binary image and gradient components
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
G45 - Градиентные отклики на ребра при 45 степеняхМатрица градиентных характеристик на ребра при 45 степенях.
Чтобы включить этот порт, установите следующие параметры:
Method — Roberts
Output type — Gradient components или Binary image and gradient components
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
G135 - Градиентные отклики на ребра при 135 степеняхМатрица градиентных характеристик на ребра при 135 степенях.
Чтобы включить этот порт, установите следующие параметры:
Method — Roberts
Output type — Gradient components или Binary image and gradient components
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
Main
Method - Метод обнаружения реберSobel (по умолчанию) | Prewitt | Roberts | CannyУкажите метод для обнаружения ребер в входе изображении. Вы можете выбрать из Sobel, Prewitt, Roberts или Canny.
Output Type - Тип выходного изображенияBinary image (по умолчанию) | Gradient components | Binary image and gradient componentsУкажите тип выходного изображения из одного из следующих опций:
Binary image - Блок выводит логическую матрицу в Edge порте. Элементы матрицы помечены 1 представление ребра пикселей.
Gradient components - Блок выводит компоненты градиента. Для Sobel и Prewitt методы, градиентные компоненты соответствуют горизонтальным и вертикальным ребрам характеристикам в портах Gh и Gv соответственно. Для Roberts метод компоненты градиента соответствуют 45 степени и 135 степени ребра реакциям в портах G45 и G135 соответственно.
Binary image and gradient components - Блок выводит как бинарное изображение, так и градиентные компоненты изображения
Чтобы включить этот параметр, установите параметр Method равным Sobel, Prewitt, или Roberts.
User-defined threshold - Пользовательский порогЗадайте требуемое пороговое значение через диалоговое окно или порт Th.
Этот параметр всегда активируется, когда вы устанавливаете параметр Method равным Canny. Чтобы включить этот параметр для Sobel, Prewitt, или Roberts методы, установите параметр Output type равным Binary image или Binary image and gradient components.
Threshold source - Источник порогаInput port (по умолчанию) | Specify via dialogВыберите источник для ввода порогового значения из одной из следующих опций:
Input port - Задайте пороговое значение, используя порт Th. Тип данных этого значения должен совпадать с типом данных входного изображения.
Specify via dialog - Введите требуемое пороговое значение в диалоговом окне.
Чтобы включить этот параметр:
Установите параметр Method равным Canny. Также установите параметр Method равным Sobel, Prewitt, или Roberts, а также установите параметр Output type равным Binary image или Binary image and gradient components.
Выберите User-defined threshold.
Threshold - ПорогЗадайте пороговое значение, которое находится в области значений ваших входных данных. Этот порог применяется к методам обнаружения ребер Собеля, Предвитта и Робертса.
Чтобы включить этот параметр, установите следующие параметры блоков:
Method — Sobel, Prewitt, или Roberts
Output type — Binary image или Binary image and gradient components
User-defined threshold — On.
Threshold source — Specify via dialog
Threshold, [Low High] - Порог для обнаружения ребра КанниЗадайте порог для обнаружения ребра Канни как двухэлементный вектор в области значений [0 1]. Элементы вектора задают низкие и высокие пороговые значения для слабого и сильного ребер соответственно.
Чтобы включить этот параметр, установите следующие параметры блоков:
Method — Canny
User-defined threshold — On.
Threshold source — Specify via dialog
Threshold scale factor:(used to automatically calculate threshold value) - Пороговый масштабный коэффициент4 (по умолчанию) | скаляромЗадайте пороговый масштабный коэффициент, чтобы автоматически вычислить пороговое значение. Блок вычисляет автоматический порог, используя среднее значение градиентной величины квадратного изображения, и умножает значение этого параметра на автоматическое пороговое значение, чтобы определить новое пороговое значение.
Чтобы включить этот параметр, установите следующие параметры блоков:
Method — Sobel, Prewitt, или Roberts
Output type — Binary image или Binary image and gradient components
User-defined threshold — Off
Edge Thinning - утончение ребраoff (по умолчанию) | onВыберите этот параметр, чтобы уменьшить толщину ребер в выходных изображениях. Эта опция требует дополнительного времени вычислений и ресурсов памяти.
Совет
Этот блок наиболее эффективен с точки зрения использования памяти и времени вычислений, когда вы снимаете флажок Edge thinning и используете параметр Threshold, чтобы задать пороговое значение.
Чтобы включить этот параметр, установите следующие параметры блоков:
Method — Sobel, Prewitt, или Roberts
Output type — Binary image или Binary image and gradient components
Approximate percentage of weak edge and nonedge pixels (used to automatically calculate threshold values) - Приблизительный процент слабых краевых и нереберных пикселейЗадайте приблизительный процент слабых ребер и неребра. Блок вычисляет автоматические пороговые значения, используя это значение.
Чтобы включить этот параметр, установите следующие параметры блоков:
Method — Canny
User-defined threshold — Off
Standard deviation of Gaussian filter - Стандартное отклонение Гауссова фильтраЗадайте стандартное отклонение Гауссова фильтра, используемого для алгоритма обнаружения ребер Канни.
Чтобы включить этот параметр, установите параметр Method равным Canny.
Data Types
Для получения информации о параметрах блоков с фиксированной точкой смотрите Задать атрибуты с фиксированной точкой для блоков.
Типы данных |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
[1] Гонзалес, Рафаэль К. и Ричард Э. Вудс. Цифровая обработка изображений. 2nd ed. Englewood Cliffs, NJ: Prentice Hall, 2002.
[2] Pratt, William K. Digital Image Processing, 2nd ed. NY: John Wiley & Sons, 1991.
Когда вы устанавливаете флажок Normalized output, вход блока не может быть фиксированной точкой.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.
