fast pedestrian detection

32
Быстрый поиск объектов на дороге Влад Шахуро Computer Vision Group CMC MSU Graphics & Media Lab

Upload: anton-konushin

Post on 11-May-2015

1.688 views

Category:

Education


2 download

TRANSCRIPT

Page 1: Fast pedestrian detection

Быстрый поиск объектов на дороге

Влад Шахуро

Computer Vision Group

CMC MSU Graphics & Media Lab

Page 2: Fast pedestrian detection
Page 3: Fast pedestrian detection

Текущие результаты Наиболее многообещающими методами поиска заданных объектов на сегодняшний день являются подходы, использующие скользящее окно. Подходы, основанные на сегментации и выделении ключевых точек, показывают неудовлетворительную точность на изображениях низкого и среднего разрешений. Подавляющее большинство методов, предложенных за последние 10 лет, использует в качестве низкоуровневого признака, извлекаемого из изображения, гистограммы ориентированных градиентов (HOG). Для классификации в основном используются AdaBoost или вариации SVM.

3

Page 4: Fast pedestrian detection

Текущие результаты (сравнение методов)

4 Dollár et al., Pedestrian Detection: An Evaluation of the State of the Art

Page 5: Fast pedestrian detection

Проблема: поиск объектов должен быть инвариантен к масштабу

Пирамида изображений Viola and Jones,

пирамида классификаторов

5 Dollár et al., The Fastest Pedestrian Detector in the West

Page 6: Fast pedestrian detection

6 Dollár et al., The Fastest Pedestrian Detector in the West

The Fastest Pedestrian Detector in the West (FPDW)

Page 7: Fast pedestrian detection

7 Dollár et al., The Fastest Pedestrian Detector in the West

Дано: гистограмма градиентов для окна. Идея: аппроксимировать гистограмму градиентов для этого же увеличенного или уменьшенного окна. – дискретный сигнал (изображение) – величина градиента – угол направления градиента – ячейка гистограммы, соответствующая углу

The Fastest Pedestrian Detector in the West (FPDW) (продолжение)

Page 8: Fast pedestrian detection

8 Dollár et al., The Fastest Pedestrian Detector in the West

В случае увеличения изображения количество информации, содержащейся в нём, не меняется. Предположим, что сигнал непрерывный. Тогда, обозначая через «растянутый» в раз сигнал, получим Будем предполагать, что зависимости частных производных и инвариантность угла градиента переносятся на дискретный сигнал, тогда , т.е. при увеличении изображения в раз значения ячеек гистограммы меняются соответственно.

The Fastest Pedestrian Detector in the West (FPDW) (продолжение)

Page 9: Fast pedestrian detection

9 Dollár et al., The Fastest Pedestrian Detector in the West

В случае уменьшения изображения теряется информация, поэтому изменение гистограммы не получается аппроксимировать линейной функцией. В natural image statistics есть следующее утверждение: если некоторая статистика (например, гистограмма градиентов) представляется в виде – весовые коэффициенты , где – инвариантная к сдвигу функция, возвращающая преобразованное изображение того же размера, тогда Можно показать, что . Кроме того, если непрерывная и не равна нулю ни в одной точке, то она представляется в виде определяется эмпирически для каждой . Таким, образом

The Fastest Pedestrian Detector in the West (FPDW) (продолжение)

Page 10: Fast pedestrian detection

Проблема: перебор всех возможных окон

10

Возможные решения: 1. Обучение каскада, отсекающего неперспективные окна при очень малом отклике.

2. Использование априорных знаний для сокращения пространства, на котором ведётся поиск. В конкретном случае поиска препятствий на дороге (пешеходов, машин, зданий) эту проблему можно эффективно решить с помощью стереопары, полученной с двух камер.

Page 11: Fast pedestrian detection

Постановка задачи

Имеем: два видеопотока (левый и правый), получаемые с двух горизонтальных камер (откалиброванных и ректифицированных), установленных на машине

Хотим: построить модель, хорошо описывающую свободное пространство и преграды перед машиной

11

Page 12: Fast pedestrian detection

Требования к модели

– компактность модель должна требовать меньшее количество памяти по сравнению с картой диспаритетов

– полнота должна учитываться важная для обнаружения объектов информация

– стабильность малое изменение данных не должно вызывать сильных изменений модели

– робастность устойчивость к шуму и выбросам

12 Badino et al., The Stixel World – A Compact Medium Level Representation of the 3D-World.

Page 13: Fast pedestrian detection

Стиксели

Стиксели – множество прямоугольных брусков. Каждый стиксель стоит вертикально на земле, имеет определённую высоту, ограничивает свободное пространство и приближает границы объекта.

Badino et al., The Stixel World – A Compact Medium Level Representation of the 3D-World. 13

Page 14: Fast pedestrian detection

Алгоритм построения стикселей

1. Строим карту диспаритетов 2. По карте диспаритетов находим

свободное пространство на кадре 3. Для каждой точки границы свободного

пространства ищем высоту стикселя, который стоит на этой точке

14

Page 15: Fast pedestrian detection

Badino et al., The Stixel World – A Compact Medium Level Representation of the 3D-World.

Строим карту диспаритетов

15

Page 16: Fast pedestrian detection

Поиск свободного пространства на кадре

Polar occupancy grid Polar occupancy grid with background subtraction

Cartesian occupancy grid with calculated free space

Badino et al., The Stixel World – A Compact Medium Level Representation of the 3D-World. 16

Page 17: Fast pedestrian detection

Оценка высоты стикселей Будем искать высоту путём оптимального разбиения на диспаритеты фона и переднего плана. Зададим функцию , сравнивающую диспаритет в данной точке и ожидаемый диспаритет стикселя, взятый из его нижней точки. Если пиксель точно принадлежит данному стикселю, функция возвращает , если не принадлежит – . Конкретный вид функции не так сильно важен, сколь важно то, чтобы она была непрерывной.

17 Badino et al., The Stixel World – A Compact Medium Level Representation of the 3D-World.

Page 18: Fast pedestrian detection

Оценка высоты стикселей (продолжение)

Для поиска оптимального разбиения построим граф, вершины которого соответствуют пикселям кадра (им припишем стоимость ), а ребра соответствуют переходам между пикселями (им припишем вес ), где – стоимость нахождения в точке – стоимость перехода из точки в точку . – номер строки, в которой находится основание стикселя – стоимость прыжка по вертикали, – глубины соответствующих пикселей, – максимальная разница глубины (нужна для того, чтобы учитывать разрывы глубины).

18 Benenson et al., Fast stixel computation without disparity

Page 19: Fast pedestrian detection

Свободное пространство для каждого пикселя

для каждого пикселя Оценка высот стикселей

Badino et al., The Stixel World – A Compact Medium Level Representation of the 3D-World. 19

Page 20: Fast pedestrian detection

Алгоритм построения стикселей

1. Строим карту диспаритетов – bottleneck 2. По карте диспаритетов находим свободное

пространство на кадре 3. Для каждой точки границы свободного

пространства ищем высоту стикселя, который стоит на этой точке

20

Page 21: Fast pedestrian detection

Matching cost volume

Будем использовать вместо карты диспаритетов matching cost volume – матрицу, подсчитываемую на первом шаге любого алгоритма построения карты глубины. – трёхмерная матрица, в ячейке которой записана стоимость совмещения пикселя левого кадра с пикселем правого кадра с учётом диспаритета (в качестве метрики может использоваться, например, absolute distance). Построение matching cost volume – простая, легко распараллеливаемая операция.

21 Benenson et al., Fast stixel computation without disparity

Page 22: Fast pedestrian detection

V-disparity map

Labayrade et al., Real time obstacle detection on non flat road geometry through ’v-disparity’ representation.

Disparity map V-disparity map

22

Page 23: Fast pedestrian detection

Оценка диспаритета дороги

Просуммируем по оси , получим грубое приближение v-disparity map. С помощью робастного алгоритма (например, преобразование Хафа) впишем прямую или ломаную, аппроксимирующую профиль дороги. Получим функцию , задающую диспаритет дороги для каждой строки изображения.

23 Benenson et al., Fast stixel computation without disparity

Page 24: Fast pedestrian detection

Оценка диспаритетов стикселей

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

24 Benenson et al., Fast stixel computation without disparity

Page 25: Fast pedestrian detection

Оценка диспаритетов стикселей (продолжение)

Не все пиксели правого изображения видны в левом изображении. Некоторые объекты в одном изображении перекрыты другими объектами во втором изображении. Так как стиксели извлекаются на основе информации из двух изображений, возможна ситуация, когда они соответствуют перекрывающимся областям. Чтобы учесть это, построим функцию, предотвращающую прыжки из видимого стикселя в невидимый стиксель. Решив задачу оптимизации, с помощью и можем найти функцию , задающую границу свободного пространства.

25 Benenson et al., Fast stixel computation without disparity

Page 26: Fast pedestrian detection

Оценка диспаритета стикселей с помощью matching cost volume даёт очень хорошее ускорение, однако эту задачу можно переформулировать, введя параметризацию, и получить дополнительное ускорение.

26

Page 27: Fast pedestrian detection

Оценка диспаритетов стикселей (продолжение)

Разделим изображение на группы строк, внутри каждой группы строк для каждого столбца изображения выберем пиксель с максимальным горизонтальным градиентом. Так мы увеличим шансы найти точно границу объекта. – группы строк – строка пикселя с максимальным горизонтальным градиентом, находящаяся в стикселе – диспаритет дороги Поскольку искать пиксель для каждого столбца избыточно, будем искать пиксель в одном из столбцов. При этом стиксель будет расположен в столбце Варьируя ширину стикселя и количество строк в группе, мы можем

контролировать количество данных, извлекаемых из изображения. 27

Benenson et al., Fast stixel computation for fast pedestrian detection

Page 28: Fast pedestrian detection

Оценка диспаритетов стикселей (продолжение)

С учётом новой параметризации переформулируем задачу поиска оптимальных диспаритетов стикселей где Аналогично решив задачу, сможем найти границу свободного пространства.

28 Benenson et al., Fast stixel computation for fast pedestrian detection

Page 29: Fast pedestrian detection

Сравнение точности обнаружения стикселей с помощью ячеек различного размера

29 Benenson et al., Fast stixel computation for fast pedestrian detection

Page 30: Fast pedestrian detection

Оценка высоты стикселей

Для поиска высоты стикселей нужно задать функцию , сравнивающую значение диспаритета в данной точке с ожидаемым диспаритетом . Поскольку вместо карты диспаритетов используется matching cost volume, необходимо оценить, насколько напоминает локальный минимум. – значение cost volume после медианной фильтрации – окрестность точки – нормировочная константа

30 Benenson et al., Fast stixel computation without disparity

Page 31: Fast pedestrian detection

Ускорение поиска пешеходов

Benenson et al., Pedestrian detection at 100 frames per second 31

Page 32: Fast pedestrian detection

Резюме лекции

– Близкие по разрешению модели можно аппроксимировать – Грамотно использованные априорные знания помогают ограничивать область интереса и решать задачи со скоростью, достаточной для real-time – Довольно часто извлеченная из изображения информация избыточна и её можно «прореживать» без потери качества распознавания и с хорошим приростом в скорости

32