Преобразование Хафа
[
вычисляет Стандартное Преобразование Хафа (SHT) бинарного изображения H
,theta
,rho
]
= hough(BW
)BW
. hough
функция предназначена для обнаружения линий. Функция использует параметрическое представление линии: rho = x*cos(theta) + y*sin(theta)
. Функция возвращается rho
, расстояние от источника до линии вдоль вектора, перпендикулярного линии, и theta
, угол в степенях между x -осью и этим вектором. Функция также возвращает SHT, H
, которая является матрицей пространства параметров, строки и столбцы которой соответствуют rho и theta значениям соответственно. Для получения дополнительной информации см. «Алгоритмы».
Стандартное преобразование Хафа (SHT) использует параметрическое представление линии:
rho = x*cos(theta) + y*sin(theta)
Переменная rho - это расстояние от источника до линии вдоль вектора, перпендикулярного линии. theta - угол перпендикулярной проекции от источника до линии, измеренный в степенях по часовой стрелке от положительной оси X. Диапазон теты составляет -90 ° ≤ Угол самой линии равен, 90 °, также измеренный по часовой стрелке относительно положительной оси X.
SHT является матрицей пространства параметров, строки и столбцы которой соответствуют значениям rho и theta соответственно. Элементы в SHT представляют камеры. Первоначально значение в каждой камере равняется нулю. Затем для каждой нефонной точки в изображении rho вычисляется для каждой theta. rho округлится до ближайшей допустимой строки в SHT. Эта камера аккумулятора увеличена. В конце этой процедуры значение Q в SHT (r, c) означает, что Q-точки в xy-плоскости лежат на линии, заданной theta (c) и rho (r). Пиковые значения в SHT представляют потенциальные линии в вход изображении.
Матрица преобразования Хафа, H
, is 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)