Hough Transform

Найти линии на изображениях

Библиотека

Преобразовывает

visiontransforms

  • Hough Transform block

Описание

Используйте блок Преобразования Хафа, чтобы найти прямые линии в изображении. Блок выводит матрицу пространства Хафа и, опционально, векторы rho-оси и theta-оси. Пиковые значения в матрице представляют потенциальные прямые линии в вход изображении. Обычно Hough Transform блок предшествует блоку Hough Lines, который использует выход этого блока для поиска прямых линий в изображении. Можно вместо этого использовать пользовательский алгоритм, чтобы найти peaks в матрице пространства Хафа в порядок, чтобы идентифицировать потенциальные прямые линии.

ПортВвод/выводПоддерживаемые типы данныхПоддерживаемые комплексные числа

BW

Матрица, которая представляет бинарное изображение

Булев

Нет

Хью

Матрица пространства параметров

  • Плавающая точка двойной точности

  • Плавающая точка с одной точностью

  • Фиксированная точка (без знака, длина дроби равная 0)

  • 8-, 16-, 32-битное беззнаковое целое число

Нет

Theta

Вектор значений theta

  • Плавающая точка двойной точности

  • Плавающая точка с одной точностью

  • Фиксированная точка (со знаком)

  • 8-, 16-, 32-битное целое число со знаком

Нет

Ро

Вектор значений rho

То же, что и порт Theta

Нет

Параметры

Theta resolution (radians)

Задайте интервалы интервалов преобразования Хафа вдоль оси теты.

Rho resolution (pixels)

Задайте интервалы интервалов преобразования Хафа вдоль rho-оси.

Output theta and rho values

Если установить этот флажок, на блоке появятся Theta и Rho порты. Блок выводит значения векторов theta и ро-оси в этих портах.

Output data type

Укажите тип данных вашего выходного сигнала.

Rounding mode

Выберите режим округления для операций с фиксированной точкой.

Overflow mode

Выберите режим переполнения для операций с фиксированной точкой.

Sine table

Выберите, как задать размер слова значений синусоидальной таблицы:

  • Когда вы выбираете Binary point scalingможно ввести размер слова значений синусоидальной таблицы в битах.

  • Когда вы выбираете Slope and bias scalingможно ввести размер слова значений синусоидальной таблицы в битах.

Значения синусоидальной таблицы не подчиняются параметрам Rounding mode и Overflow mode; они всегда насыщаются и округлятся, чтобы Nearest.

Rho

Выберите, как задать размер слова и длину дроби значений rho:

  • Когда вы выбираете Binary point scaling, можно ввести размер слова и длину дроби значений rho, в битах.

  • Когда вы выбираете Slope and bias scaling, можно ввести размер слова, в битах, и наклон значений rho. Все сигналы в блоках Computer Vision Toolbox™ имеют смещение 0.

Product output

. Используйте этот параметр, чтобы задать, как обозначить выходное слово продукта и длины дроби:

  • Когда вы выбираете Binary point scaling, можно ввести размер слова и длину дроби выходного продукта, в битах.

  • Когда вы выбираете Slope and bias scaling, можно ввести размер слова, в битах, и наклон продукта выхода. Все сигналы в блоках Computer Vision Toolbox имеют смещение 0.

Смотрите Типы данных умножения для рисунков, описывающих использование выхода продукта.

Accumulator

Используйте этот параметр, чтобы задать, как обозначить это слово аккумулятора и длины дроби:

  • Когда вы выбираете Same as product outputэти характеристики соответствуют характеристикам выходного продукта.

  • Когда вы выбираете Binary point scaling, можно ввести размер слова и длину дроби аккумулятора, в битах.

  • Когда вы выбираете Slope and bias scaling, можно ввести размер слова, в битах, и наклон аккумулятора. Все сигналы в блоках Computer Vision Toolbox имеют смещение 0.

    См. Типы данных умножения для рисунков, описывающих использование типа данных аккумулятора в этом блоке.

Lock data type settings against change by the fixed-point tools

Выберите этот параметр, чтобы инструменты с фиксированной точкой не переопределяли типы данных, заданные в маске блока. Для получения дополнительной информации см. fxptdlg (Fixed-Point Designer), ссылочная страница на Fixed-Point Tool в Simulink® документация.

Hough output

Выберите, как задать размер слова и длину дроби выхода Hough блока:

  • Когда вы выбираете Binary point scaling, можно ввести размер слова выхода Hough, в битах. Длина дроби всегда имеет значение 0.

  • Когда вы выбираете Slope and bias scaling, можно ввести размер слова, в битах, выхода Hough. Уклон всегда имеет значение 0. Все сигналы в блоках Computer Vision Toolbox имеют смещение 0.

Theta output

Выберите, как задать размер слова и длину дроби theta выхода блока:

  • Когда вы выбираете Binary point scaling, можно ввести размер слова и длину дроби theta выхода, в битах.

  • Когда вы выбираете Slope and bias scaling, можно ввести размер слова, в битах, и наклон theta выхода. Все сигналы в блоках Computer Vision Toolbox имеют смещение 0.

Алгоритм

Блок Hough Transform реализует Стандартное Преобразование Хафа (SHT). SHT использует параметрическое представление линии:

Верхний левый угловой пиксель принят равным x = 0, y = 0.

Переменная rho указывает перпендикулярное расстояние от источника до линии.

Переменная theta указывает угол наклона нормальной линии от оси X. Система области значений theta π2θ<+π2 с размером шага, определяемым параметром Theta resolution (radians). SHT измеряет угол линии по часовой стрелке относительно положительной оси X.

Блок Hough Transform создает матрицу аккумулятора. Пара (rho, theta) представляет положение камеры в матрице аккумулятора. Каждый действительный (логический true) пиксель входного бинарного изображения, представленного (R, C), создает значение rho для всех значений theta. Блок квантует значения rho до ближайшего числа в векторе rho. Вектор rho зависит от размера входного изображения и заданного пользователем разрешения rho. Блок увеличивает счетчик (первоначально установленный на нуль) в тех камерах массива аккумулятора, представленных (rho, theta) парами, найденными для каждого пикселя. Этот процесс проверяет точку (R, C), которая находится на линии, заданной как (rho, theta). Блок повторяет этот процесс для каждого логического истинного пикселя в изображении. Блок Hough выводит полученную матрицу аккумулятора.

См. также

Find Local Maxima

Computer Vision Toolbox

Hough Lines

Computer Vision Toolbox

hough

Image Processing Toolbox™

houghlines

Image Processing Toolbox

houghpeaks

Image Processing Toolbox

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ Simulink ®

.
Представлено до R2006a