Преобразование Хафа

Содержание

Слайд 2

Метод общих геометрических мест Задача 1: Построение треугольника по 3 заданным отрезкам.

Метод общих геометрических мест

Задача 1: Построение треугольника по 3 заданным отрезкам.

Слайд 3

Метод общих геометрических мест Задача 1: Построение треугольника по 3 заданным отрезкам. гмт1

Метод общих геометрических мест

Задача 1: Построение треугольника по 3 заданным отрезкам.

гмт1

Слайд 4

Метод общих геометрических мест Задача 1: Построение треугольника по 3 заданным отрезкам. гмт1 гмт2

Метод общих геометрических мест

Задача 1: Построение треугольника по 3 заданным отрезкам.

гмт1

гмт2

Слайд 5

Метод общих геометрических мест Задача 1: Построение треугольника по 3 заданным

Метод общих геометрических мест

Задача 1: Построение треугольника по 3 заданным отрезкам.

гмт1

гмт2

гмт1

∩ гмт2
Слайд 6

Метод общих геометрических мест Задача 2: Построение окружности по 3 заданным точкам.

Метод общих геометрических мест

Задача 2: Построение окружности по 3 заданным точкам.

Слайд 7

Метод общих геометрических мест Задача 2: Построение окружности по 3 заданным точкам. гмт1

Метод общих геометрических мест

Задача 2: Построение окружности по 3 заданным точкам.

гмт1

Слайд 8

Метод общих геометрических мест Задача 2: Построение окружности по 3 заданным точкам. гмт1 гмт2

Метод общих геометрических мест

Задача 2: Построение окружности по 3 заданным точкам.

гмт1

гмт2

Слайд 9

Метод общих геометрических мест Задача 2: Построение окружности по 3 заданным

Метод общих геометрических мест

Задача 2: Построение окружности по 3 заданным точкам.

гмт1

гмт2

гмт1

∩ гмт2

O

Слайд 10

Метод общих геометрических мест Задача 2: Построение окружности по 3 заданным

Метод общих геометрических мест

Задача 2: Построение окружности по 3 заданным точкам.

гмт1

гмт2

гмт1

∩ гмт2

R

O

Слайд 11

Метод общих геометрических мест Задача 2: Построение окружности по 3 заданным

Метод общих геометрических мест

Задача 2: Построение окружности по 3 заданным точкам.

гмт1

гмт2

гмт1

∩ гмт2

R

O

Слайд 12

Метод общих геометрических мест Задача 3: Построение окружности по N заданным точкам

Метод общих геометрических мест

Задача 3: Построение окружности по N заданным точкам

Слайд 13

Метод общих геометрических мест Задача 3: Построение окружности по N заданным точкам

Метод общих геометрических мест

Задача 3: Построение окружности по N заданным точкам

Слайд 14

Метод общих геометрических мест Задача 3: Построение окружности по N заданным точкам гмт12 R

Метод общих геометрических мест

Задача 3: Построение окружности по N заданным точкам

гмт12

R

Слайд 15

Метод общих геометрических мест Задача 3: Построение окружности по N заданным

Метод общих геометрических мест

Задача 3: Построение окружности по N заданным точкам

гмт12

гмт23

гмт

R

гмт ij

Слайд 16

Метод общих геометрических мест Задача 3: Построение окружности по N заданным точкам гмт12 гмт23 гмт lk

Метод общих геометрических мест

Задача 3: Построение окружности по N заданным точкам

гмт12

гмт23

гмт

lk
Слайд 17

Метод общих геометрических мест Задача 3: Построение окружности по N заданным

Метод общих геометрических мест

Задача 3: Построение окружности по N заданным точкам

гмт12

гмт23

гмт

ij

гмт lk

Больше голосов

Слайд 18

Метод общих геометрических мест Задача 3: Построение окружности по N заданным

Метод общих геометрических мест

Задача 3: Построение окружности по N заданным точкам

гмт12

гмт23

MAX

∩ гмт

R

O

гмт ij

гмт lk

Слайд 19

Преобразование Хафа (Hough) Преобразование Хафа позволяет находить на бинарном изображении плоские

Преобразование Хафа (Hough)

Преобразование Хафа позволяет находить на бинарном изображении плоские кривые,

заданные параметрически, например: прямые, окружности, эллипсы, и т.д. Бинарное изображение – изображение, пиксели которого принимают всего два значения (0 и 1). Считаем 0 – точками фона, 1 – «точками интереса». Задача преобразования Хафа состоит в выделении кривых, образованных точками интереса.
Слайд 20

Основная идея метода Рассмотрим семейство кривых на плоскости, заданное параметрическим уравнением:

Основная идея метода

Рассмотрим семейство кривых на плоскости, заданное параметрическим уравнением:
F(a1, a2,

…, an, x, y) = 0;
где F - некоторая функция, a1, a2, ..., an - параметры семейства кривых, x, y - координаты на плоскости. Параметры семейства кривых образуют фазовое пространство, каждая точка которого (конкретные значения параметров a1, a2, ..., an) соответствует некоторой кривой.

Идея преобразования Хафа состоит в поиске кривых (точек фазового пространства), которые проходят через достаточное количество точек интереса.

Слайд 21

Машинное представление Ввиду дискретности машинного представления и входных данных (изображения), требуется

Машинное представление

Ввиду дискретности машинного представления и входных данных (изображения), требуется перевести

непрерывное фазовое пространство в дискретное.
Вводим сетку на фазовом пространстве
Каждой ячейке сетки ставим в соответствие счетчик
Значение счетчика каждой ячейки устанавливаем равным количеству точек интереса, через которые проходит хотя бы одна кривая, параметры которой принадлежат данной ячейке.
Анализ счетчиков ячеек позволяет найти на изображении кривые, на которых лежит наибольшее количество точек интереса.
Слайд 22

Выделение прямых на изображении Прямую на плоскости можно задать следующим образом:

Выделение прямых на изображении

Прямую на плоскости можно задать следующим образом:
у

= kx +b
x cosθ + y sinθ = R, R - длина перпендикуляра опущенного на прямую из начала координат, θ - угол между перпендикуляром к прямой и осью OX, θ изменяется в пределах от 0 до 2π , R ограничено размерами входного изображения.
Слайд 23

Выделение прямых на изображении Таким образом функция, задающая семейство прямых, имеет

Выделение прямых на изображении


Таким образом функция, задающая семейство прямых, имеет вид:

F (R, θ, x, y) = x cosθ + y sinθ - R.

Через каждую точку (x, y) изображения можно провести несколько прямых с разными R и θ, то есть каждой точке (x, y) изображения соответствует набор точек в фазовом пространстве (R, θ). В свою очередь каждой точке пространства (R, θ) соответствует набор точек (x, y) на изображении, образующий прямую.

Слайд 24

Изображение и фазовое пространство Через одну точку можно провести несколько прямых.

Изображение и фазовое пространство

Через одну точку можно провести несколько прямых. Учитывая

дискретность и введенную сетку, их будет конечное число.

Каждой прямой пространства (x, y) соответствует точка фазового пространства (R, q). Прямые с левого рисунка образуют синусоиду.

Слайд 25

Изображение и фазовое пространство Изображение с пятью точками интереса. Кривые в

Изображение и фазовое пространство

Изображение с пятью точками интереса.

Кривые в фазовом пространстве,

соответствующие множеству прямых проходящих через каждую из точек.

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

Слайд 26

Дискретизация фазового пространства Переводим непрерывное фазовое пространство в дискретное. Введем сетку

Дискретизация фазового пространства

Переводим непрерывное фазовое пространство в дискретное. Введем сетку на

пространстве (R, θ), одной ячейке которой соответствует набор прямых с близкими значениями R и θ.
Счетчик ставится в соответствие каждой ячейке сетки [Ri, Ri+1]x[θi,θi+1], равный числу точек интереса на изображении, удовлетворяющих уравнению:
x cosθ + y sinθ = R, где θi ≤ θ ≤ θi+1, Ri ≤ R ≤ Ri+1.
Слайд 27

Алгоритм выделения прямых обнулить счетчики всех ячеек; для каждой точки интереса

Алгоритм выделения прямых

обнулить счетчики всех ячеек;
для каждой точки интереса на изображении:
для

каждой прямой, проходящей через данную точку увеличить соответствующий счетчик;
выбрать ячейки со значением счетчика, превышающим заданный порог;

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


Слайд 28

Размер ячеек стоит выбирать аккуратно Если ячейки будут очень большими, то

Размер ячеек стоит выбирать аккуратно


Если ячейки будут очень большими, то за

«прямую» может приниматься разрозненный набор точек.
Если же наоборот, ячейки будут слишком малы, есть вероятность, что ни одной прямой не найдется – все счетчики будут иметь небольшое значение.
Слайд 29

Примеры работы

Примеры работы

Слайд 30

Примеры работы (с шумом)

Примеры работы (с шумом)

Слайд 31

Примеры работы (фрагменты прямых)

Примеры работы (фрагменты прямых)

Слайд 32

Обобщенное преобразование Хафа Задача: Обнаружение окружности заданного радиуса. R

Обобщенное преобразование Хафа

Задача: Обнаружение окружности заданного радиуса.

R

Слайд 33

Обобщенное преобразование Хафа Задача: Обнаружение окружности заданного радиуса. R O гмт

Обобщенное преобразование Хафа

Задача: Обнаружение окружности заданного радиуса.

R

O

гмт

Слайд 34

Обобщенное преобразование Хафа Задача: Обнаружение окружности заданного радиуса. O

Обобщенное преобразование Хафа

Задача: Обнаружение окружности заданного радиуса.

O

Слайд 35

Обобщенное преобразование Хафа Задача: Обнаружение ломаной заданной формы. + О

Обобщенное преобразование Хафа

Задача: Обнаружение ломаной заданной формы.

+

О

Слайд 36

Обобщенное преобразование Хафа Задача: Обнаружение ломаной заданной формы. + О

Обобщенное преобразование Хафа

Задача: Обнаружение ломаной заданной формы.

+

О

Слайд 37

Обобщенное преобразование Хафа Задача: Обнаружение ломаной заданной формы. + О гмт

Обобщенное преобразование Хафа

Задача: Обнаружение ломаной заданной формы.

+

О

гмт

Слайд 38

Обобщенное преобразование Хафа Задача: Обнаружение ломаной заданной формы. + О LUT

Обобщенное преобразование Хафа

Задача: Обнаружение ломаной заданной формы.

+

О

LUT

Слайд 39

Обобщенное преобразование Хафа Задача: Обнаружение фигуры заданной формы. + О Этап 1. Обучение (построение LUT)

Обобщенное преобразование Хафа

Задача: Обнаружение фигуры заданной формы.

+

О

Этап 1. Обучение (построение

LUT)
Слайд 40

Обобщенное преобразование Хафа Задача: Обнаружение фигуры заданной формы. + О Этап 1. Обучение (построение LUT)

Обобщенное преобразование Хафа

Задача: Обнаружение фигуры заданной формы.

+

О

Этап 1. Обучение (построение

LUT)
Слайд 41

Обобщенное преобразование Хафа Задача: Обнаружение фигуры заданной формы. + О LUT Этап 1. Обучение (построение LUT)

Обобщенное преобразование Хафа

Задача: Обнаружение фигуры заданной формы.

+

О

LUT

Этап 1. Обучение (построение

LUT)
Слайд 42

Обобщенное преобразование Хафа Задача: Обнаружение фигуры заданной формы. + О LUT

Обобщенное преобразование Хафа

Задача: Обнаружение фигуры заданной формы.

+

О

LUT

Голосующая точка

Этап 2. Обнаружение

(голосование точек и анализ аккумулятора)
Слайд 43

Обобщенное преобразование Хафа Задача: Построение окружности по полутоновому образу. гмт O

Обобщенное преобразование Хафа

Задача: Построение окружности по полутоновому образу.

гмт

O

Касательная в точке

Радиус-вектор в

точке

Градиент в точке

Слайд 44

Обобщенное преобразование Хафа гмт Касательная в точке O Градиент в точке

Обобщенное преобразование Хафа

гмт

Касательная в точке

O

Градиент в точке

Задача: Построение окружности по полутоновому

образу.
Слайд 45

Обобщенное преобразование Хафа Задача: Инвариантное обнаружение по полутоновому образу.

Обобщенное преобразование Хафа

Задача: Инвариантное обнаружение по полутоновому образу.

Слайд 46

Обобщенное преобразование Хафа + О Задача: Инвариантное обнаружение по полутоновому образу.

Обобщенное преобразование Хафа

+

О

Задача: Инвариантное обнаружение по полутоновому образу.

Слайд 47

Обобщенное преобразование Хафа + О Касательная в точке Градиент в точке

Обобщенное преобразование Хафа

+

О

Касательная в точке

Градиент в точке

Радиус-вектор в точке

Угол между

градиентом
и радиус-вектором

R

ϕ

Задача: Инвариантное обнаружение по полутоновому образу.

Слайд 48

Обобщенное преобразование Хафа + О Касательная в точке Градиент в точке

Обобщенное преобразование Хафа

+

О

Касательная в точке

Градиент в точке

Радиус-вектор в точке

Угол между

градиентом
и радиус-вектором

ϕ

ϕ

ϕ

LUT: R(ϕ)

Задача: Инвариантное обнаружение по полутоновому образу.

Слайд 49

Морфологии Серра на базе преобразования Хафа

Морфологии Серра на базе преобразования Хафа

Слайд 50

Морфологии Серра на базе преобразования Хафа Монотонная морфология на базе преобразования

Морфологии Серра на базе преобразования Хафа

Монотонная морфология на базе преобразования Хафа

и GHT
H-открытие - объединение проекций изображения A(p) на отдельные прямые линии: Pr(A(p),t) = MAXq∈Q(A(q,t)∙Pr(A(p),ϕ(p,q))) = MAXq∈Q(A(q,t)∙A(p)∙ϕ(p,q)),
где p=(x,y); q=(ρ,θ) – параметры нормальной параметризации прямой; Q – пространство параметров; ϕ(p,q)∈{0,1} – характеристическая функция прямой с параметрами q; A(q,t)∈{0,1} – аккумулятор преобразования Хафа, бинаризованный по порогу t.
(а) (b) (с)
Пример морфологического H-открытия: a – исходное бинарное изображение; b – аккумулятор пространства Хафа c – результат H-открытия. На исходном контурном препарате выделены глобальные прямолинейные структуры.
Аналогичным образом строится монотонная проективная морфология на базе
обобщенного преобразования Хафа (GHT).
Слайд 51

Морфология на базе локального преобразования Хафа Transform Thresholding Reconstruction Edge

Морфология на базе локального преобразования Хафа

Transform

Thresholding

Reconstruction

Edge

Слайд 52

Морфология на базе локального преобразования Хафа Transform Thresholding Reconstruction Edge

Морфология на базе локального преобразования Хафа

Transform

Thresholding

Reconstruction

Edge