Преобразование Хафа
[H,theta,rho]
= hough(BW)
[H,theta,rho]
= hough(BW,Name,Value,...)
[
вычисляет Стандартное преобразование Хафа (SHT) двухуровневого изображения H
,theta
,rho
]
= hough(BW
)BW
. Функция hough
разработана, чтобы обнаружить строки. Функция использует параметрическое представление строки: rho = x*cos(theta) + y*sin(theta)
. Функция возвращает rho
, расстояние от источника до строки вдоль векторного перпендикуляра к строке и theta
, угол в градусах между x - ось и этим вектором. Функция также возвращает Стандартное Преобразование Хафа, H
, который является матрицей пространства параметров, строки и столбцы которой соответствуют rho и значениям theta соответственно. Для получения дополнительной информации см. Алгоритмы.
Стандартное преобразование Хафа (SHT) использует параметрическое представление строки:
rho = x*cos(theta) + y*sin(theta)
Переменная ро является расстоянием от источника до строки вдоль векторного перпендикуляра к строке. тета является углом перпендикулярной проекции от источника до строки, измеренной в градусах по часовой стрелке от положительной оси X. Область значений теты . Угол самой строки , также измеренный по часовой стрелке относительно положительной оси X.
SHT является матрицей пространства параметров, строки и столбцы которой соответствуют ро и значениям теты соответственно. Элементы в SHT представляют ячейки аккумулятора. Первоначально, значение в каждой ячейке является нулем. Затем для каждой нефоновой точки в изображении ро вычисляется для каждой теты. ро округляется до самой близкой позволенной строки в SHT. Та ячейка аккумулятора постепенно увеличивается. В конце этой процедуры значение Q в SHT (r, c) означает, что точки Q в xy-плоскости лежат на строке, заданной тетой (c) и ро (r). Пиковые значения в SHT представляют потенциальные строки во входном изображении.
Матрица Преобразования Хафа, H
, является nrho-by-ntheta где:
nrho = 2*(ceil(D/RhoResolution)) + 1
, и
D = sqrt((numRowsInBW - 1)^2 + (numColsInBW - 1)^2)
.
Значения rho
колеблются от -diagonal
до diagonal
, где
diagonal = RhoResolution*ceil(D/RhoResolution)
.
ntheta = length(theta)