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

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