Идентифицируйте peaks в Преобразовании Хафа
определяет местоположение peaks в матрице Преобразования Хафа, где именованные параметры управляют аспектами операции.peaks
= houghpeaks(___,Name,Value
,...)
Считайте изображение в рабочую область.
I = imread('circuit.tif');
Создайте двухуровневое изображение.
BW = edge(imrotate(I,50,'crop'),'canny');
Создайте Преобразование Хафа изображения.
[H,T,R] = hough(BW);
Найдите peaks в Преобразовании Хафа изображения и постройте их.
P = houghpeaks(H,2); imshow(H,[],'XData',T,'YData',R,'InitialMagnification','fit'); xlabel('\theta'), ylabel('\rho'); axis on, axis normal, hold on; plot(T(P(:,2)),R(P(:,1)),'s','color','white');
H
— Матрица преобразования ХафаМатрица преобразования Хафа, заданная как числовой массив класса double
. Строки и столбцы соответствуют rho
и theta
значения. Используйте hough
функция, чтобы создать матрицу Преобразования Хафа.
Типы данных: double
numpeaks
— Максимальное количество peaks, чтобы идентифицироватьМаксимальное количество peaks, чтобы идентифицировать, заданный в виде числа.
Типы данных: double
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
P = houghpeaks(H,2,'Threshold',15);
'Threshold'
— Минимальное значение, которое будет рассмотрено пиком0.5*max(H(:))
(значение по умолчанию) | неотрицательный числовой скалярМинимальное значение, которое будет рассмотрено пиком, заданным в виде неотрицательного числа. Значение может быть любым значением между 0
и Inf
.
Типы данных: double
'NHoodSize'
— Размер окружения подавленияsize(H)/50
(значение по умолчанию) | двухэлементный вектор положительных нечетных целых чиселРазмер окружения подавления, заданного как двухэлементный вектор положительных нечетных целых чисел. suppression neighborhood является окружением вокруг каждого пика, который обнуляется после того, как пик идентифицирован.
Типы данных: double
'Theta'
— Значения теты преобразования Хафа
(значение по умолчанию) | векторЗначения теты преобразования Хафа, заданные как вектор, возвращенный hough
функция. Каждый элемент вектора задает значение теты для соответствующего столбца выходной матрицы H
. houghpeaks
использует значения теты, заданные в пиковом подавлении.
Если вы задаете 'Theta'
параметр, как введено к hough
функция, необходимо задать theta
параметр с houghpeaks
функция. Используйте theta
выходное значение от hough
функционируйте как theta
входное значение для houghpeaks
. В противном случае пиковое подавление может привести к неожиданным результатам.
Типы данных: double
peaks
— Координаты строки и столбца peaks найденыКоординаты строки и столбца найденного peaks, возвратились как Q-by-2 матрица, где значение Q может лежать в диапазоне от 0
к numpeaks
.
Указания и ограничения по применению:
houghpeaks
поддерживает генерацию кода С (требует MATLAB® Coder™). Для получения дополнительной информации смотрите Генерацию кода для Обработки изображений.
Дополнительные названия параметра 'Threshold'
и 'NHoodSize'
должны быть константы времени компиляции. Их присваиваемые значения не должны быть константами времени компиляции.
Указания и ограничения по применению:
Дополнительные названия параметра 'Threshold'
и 'NHoodSize'
должны быть константы времени компиляции. Их присваиваемые значения не должны быть константами времени компиляции.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
Вы щелкнули по ссылке, которая соответствует команде MATLAB:
Выполните эту команду, введя её в командном окне MATLAB.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.