52
Основы 3D обработки Сайт курса: http://cvbeginner.blogspot.com/ 1

Лекция 8 Основы 3D обработки

Embed Size (px)

Citation preview

Основы 3D обработки

Сайт курса:

http://cvbeginner.blogspot.com/

1

Из предыдущих лекций

• Особые точки

• Аффинное преобразование

• Поиск лиц Viola-Jones

• Линейные преобразования

2

План лекции

• Решаемые задачи

• Модель камеры

• Фундаментальная матрица

• Поиск объекта с заданными параметрами на изображении

• Kinect как работает

• Определение позы человека с помощью Microsoft Kinect

3

Стерео реконструкция

4

Slide credit:Marc Pollefeys

Имея два изображения объекта сфотографированных с разных точек можно

оценить расстояние до объекта

5

Структура из движения

I1 I2 I10

Slide credit:Marc Pollefeys

Модель камеры

6

Вопрос: как вычислить x и y?

Ответ

7

ZfXx /

ZfYy /

,

Координаты фотоприемника

8

0/ uwxu

0/ vhyv

0u

wZ

fXu

0v

hZ

fYv

Матрицы внутренних параметров камеры

9

AMvZ

100

/0

0/

0

0

vhf

uwf

A

Вопрос: Как вычислить матрицу внутренних параметров камеры?

Калибровка по шахматной доске

10

Реализация калибровки в OpenCV

//Находим координаты углов

cv::findChessboardCorners(…);

//Уточняем положения углов

cv:: findCornerSubPix(…);

//Составляем список сопряженных точек

cv::calibrateCamera(model, detected_corners, imsize, cameraMatrix, distCoef, rvect, tvect, CV_CALIB_FIX_K3);

11

Искажения

12

Причины искажения

13

Модель искажения

14

cv::undistort(src,dst,cameraMat,distCoef)

Коррекция дисторсии

15

Связь между различными системами координат

16

tRMM

Поворот + перенос

Вопрос: размер матрицы

поворота

Основы стериометрии

17

)/( xxfbZ

)(2

)(

xx

xxbX

)(2

)(

xx

yybY

Зная внутренние параметры

каждой камеры и координаты

точки, то мы можем определить

ее координаты в глобальной СК

Стереокалибровка камер

• cv::stereoCalibrate(model,_left.getCorners(),_right.getCorners(),lcm, ldk,rcm,rdk,imsize,R,T,E,F…);

18

tRMM

Ректификация изображений

• Задача выровнятьизображения, чтобысточки одногоизображениясовпадали сострочками другого

19

Диспарантность

20

xxd

Вопрос: Как изменяется

диспарантность при удалении

объекта?

Пример

21

Диспарантность

22

Процесс стерео отождествления

23

Левая камера Правая камера

Исходное изображения

Коррекция дисторсии

Ректификация

Обрезание

Реконструкция рельефа

24

Реконструкция рельефа

25

Дополнительные возможности

• Поиск ориентации объекта сизвестными параметрами,относительно камеры

• cv::solvePnP(objectPoints, imagePoints,cameraMatrix, distCoeffs, rvec, tvec);

26

Вопросы

27

Kinect

28

Типы дальностных камер

• Time of flight (камеры времени пролета)

• Структурированное освещение

29

Time of Flight

• Pulsed light source with digital time counters

–до 7 км разрешение до 128x128

• RF-modulated light sources with phase detectors

–10-60м 176x144

• Range gated image

–1.5-2.5 метров 320x240

30

Устройство

31

Шаблон проектора

32

Процесс анализа

33

ИК проектор

34

OpenNI

35

Распознование позы человека

36

Исходные данные

37

Классы

38

Признаки

39

Деревья решений

40

Пример дерева решений

41

Оценка качества разбиения

42

Эффект переобучения

43

Свойства• Плюсы

– Просто и наглядно

– Легко анализируемо

– Быстро работает

– Легко пременим к задачам с множеством классов

• Минусы

– Плохая аппроксимация сложных поверхностей

– Тебует алгоритмы контроля сложности

44

Комитетные методы. Лес решений

45

Пример

46

Свойства

47

Возвращаясь к классификации поз

48

Пример дерева для классификации позы

49

Результаты

50

Другие применения MS Kinect

• Робототехника

• Психология

• Системы безопасности

51

Вопросы?

52