Computer vision 2013 — различия между версиями

Материал из SEWiki
Перейти к: навигация, поиск
(Лекция 3)
 
(не показаны 2 промежуточные версии 2 участников)
Строка 45: Строка 45:
 
* Линейный фильтр.
 
* Линейный фильтр.
  
*** Лекция 2 ***
+
=== Лекция 2 ===
 
''Рассказ про Python+OpenСV (не представляет теор. интереса)''
 
''Рассказ про Python+OpenСV (не представляет теор. интереса)''
 
  
 
=== Лекция 3 ===
 
=== Лекция 3 ===
Строка 54: Строка 53:
 
* Производные изображения.  
 
* Производные изображения.  
 
* Оператор Лапласа.  
 
* Оператор Лапласа.  
  * Конечно-разностная схема для оп.Лапласа.  
+
** Конечно-разностная схема для оп. Лапласа.  
  * Матрицы инвар. к поворотам.h
+
** Матрицы инвар. к поворотам.
http://stackoverflow.com/questions/17607312/difference-between-disparity-map-and-disparity-image-in-stereo-matching
+
** Повышение резкости.
  * Повышение резкости.
+
 
* Повышение резкости с помощью вычитания смазанного изображения.
 
* Повышение резкости с помощью вычитания смазанного изображения.
 
* Преобразование Фурье. Дискретное преобразование Фурье.
 
* Преобразование Фурье. Дискретное преобразование Фурье.
  * Низкочасточный фильтр.
+
** Низкочасточный фильтр.
  * Свойства преобразования.
+
** Свойства преобразования.
  * Теорема о свертке.
+
** Теорема о свертке.
  * Восстановление изображения.
+
** Восстановление изображения.
 
* Винеровский фильтр
 
* Винеровский фильтр
  
Строка 70: Строка 68:
 
=== Лекция 4 ===
 
=== Лекция 4 ===
 
* Шум метода фильтрации.
 
* Шум метода фильтрации.
* Гаусовский фильтр.  
+
* Гауссовский фильтр.  
* Фильтр Ярославкого (Билетеральный)
+
* Фильтр Ярославкого (Билатеральный)
 
* Анизатропный фильтр
 
* Анизатропный фильтр
 
* Total variation
 
* Total variation
 
* Non-local means
 
* Non-local means
* Метрики оценки шума матода. PSNR
+
* Метрики оценки шума метода. PSNR
* Разряженное представление
+
* Block Matching and 3d filtering
* Block Matching 3dapache admin
+
** Цветная фильтрация и видео
  * Цветная фильтрация и видео
+
 
* Вариационный метод восстановления изображения
 
* Вариационный метод восстановления изображения
  
Строка 85: Строка 82:
 
=== Лекция 5 ===  
 
=== Лекция 5 ===  
 
* Пирамида гауссианов
 
* Пирамида гауссианов
  * Восстановление изображения по пирамиде.
+
** Восстановление изображения по пирамиде.
  * Возможность локальной обработки изображения.
+
** Возможность локальной обработки изображения.
  * Пирамиды как фильтр нижних частот.
+
** Пирамиды как фильтр нижних частот.
 
* Обзор вейвлет разложений.
 
* Обзор вейвлет разложений.
  * Локальность представления.
+
** Локальность представления.
  * Пример детектирование текстуры дерева.
+
** Пример детектирования текстуры дерева.
 
* Детектирование "особенностей" изображения
 
* Детектирование "особенностей" изображения
  * Уголки, критерии уголка
+
** Уголки, критерии уголка
  * Разница гаусианов в пирамиде.
+
** Разница гауссианов в пирамиде.
 
* SIFT дескриптор. Построение. Свойства.
 
* SIFT дескриптор. Построение. Свойства.
* Дескриптор HOG
+
* Дескриптор HOG (Histogram of oriented gradients)
 
* Детекторы дескрипторов, kd-деревья для разбиения дискрипторов.
 
* Детекторы дескрипторов, kd-деревья для разбиения дискрипторов.
  
Строка 102: Строка 99:
 
=== Лекция 6 ===
 
=== Лекция 6 ===
 
* Энтропия, Избыточность, связь с сжатием.
 
* Энтропия, Избыточность, связь с сжатием.
* Код Хффмана. Арифметическое кодирование, LZW.Ц
+
* Код Хффмана. Арифметическое кодирование, LZW.
 
* Сжатие картинок.  
 
* Сжатие картинок.  
 
* MLP кодирование.
 
* MLP кодирование.
 
* Восприятие человека. Сжатие с потерями.
 
* Восприятие человека. Сжатие с потерями.
  * Прогрессирующее декодирование. Пирамиды. Частоты.
+
** Прогрессирующее декодирование. Пирамиды. Частоты.
 
* Метрики ошибок. PSNR.
 
* Метрики ошибок. PSNR.
 
* Декореляция изображений. Умножение на ортготональную матрицу.
 
* Декореляция изображений. Умножение на ортготональную матрицу.
Строка 116: Строка 113:
 
=== Лекция 7 ===
 
=== Лекция 7 ===
 
* Контуры
 
* Контуры
  * Определение детекции краев. Применение.
+
** Определение детекции краев. Применение.
  * Обзор детекторов краев.
+
** Обзор детекторов краев.
  * Детектор контуров. Кодирование и обработка контуров.
+
** Детектор контуров. Кодирование и обработка контуров.
  * Выделение линий. Hough transform.
+
** Выделение линий. Hough transform.
* Проективной геометрия.
+
* Проективная геометрия.
  * История и польза.
+
** История и польза.
  * Классы эквивалентности.
+
** Классы эквивалентности.
  * Соответствие векторов R^n и R^(n+1).
+
** Соответствие векторов R^n и R^(n+1).
  * Точки и направления.
+
** Точки и направления.
  * Соответсвие прямых в R^n и точек в R^(n+1).
+
** Соответсвие прямых в R^n и точек в R^(n+1).
  * Смысл векторного произведения проективных векторов.
+
** Смысл векторного произведения проективных векторов.
  * Проективные преобразования
+
** Проективные преобразования
    * Гомография
+
*** Гомография
    * Нахождения гомографии по точкам
+
*** Нахождения гомографии по точкам
  
 
http://habrahabr.ru/post/126269/
 
http://habrahabr.ru/post/126269/
Строка 136: Строка 133:
 
* Нахождение гомографии (детально).
 
* Нахождение гомографии (детально).
 
* Нахождение гомографии с шумом.
 
* Нахождение гомографии с шумом.
  * Минимизация расстояний
+
** Минимизация расстояний
  * Ошибка перепроктирования
+
** Ошибка перепроктирования
 
* Итеративный метод оптимизации
 
* Итеративный метод оптимизации
  * Функция стоимости, параметризация.
+
** Функция стоимости, параметризация.
  * Градиентный спуск.  
+
** Градиентный спуск.  
 
* Проблема неправильного матчинга точек (outliers)
 
* Проблема неправильного матчинга точек (outliers)
  * Идея метода RanSaC
+
** Идея метода RanSaC
 
* Проективная модель камеры.
 
* Проективная модель камеры.
  * Система координат камеры.
+
** Система координат камеры.
  * Проектирование на плоскость камеры.  
+
** Проектирование на плоскость камеры.  
    * Матрица проектирования.
+
*** Матрица проектирования.
    * Проектирование с учетом измерений в пикселях.
+
*** Проектирование с учетом измерений в пикселях.
    * Учет переноса и поворота камеры.
+
*** Учет переноса и поворота камеры.
  
 
=== Лекция 9 ===
 
=== Лекция 9 ===
Строка 154: Строка 151:
 
* Алгоритм RanSaC
 
* Алгоритм RanSaC
 
* Модель мира.  
 
* Модель мира.  
  * Проективная камера и плоскость в мире.
+
** Проективная камера и плоскость в мире.
  * Линия горизонта.
+
** Линия горизонта.
  * Точка зенита.
+
** Точка зенита.
  * Угол между двумя прямыми
+
** Угол между двумя прямыми
  * Расстояние между предметами
+
** Расстояние между предметами
 
* Определение положения камеры
 
* Определение положения камеры
 +
 +
http://courses.cs.washington.edu/courses/cse576/08sp/lectures/Projective.ppt
  
 
=== Лекция 10 ===
 
=== Лекция 10 ===
 
* Модель двух камер
 
* Модель двух камер
* Нахождение матрицы проектции
+
* Нахождение матрицы проекции
  * Запись системы с неизвестными с нормой 1.
+
** Запись системы с неизвестными с нормой 1.
  * Обзор SVD разложения.
+
** Обзор SVD разложения.
 
* Триангуляция и определение точки в пространстве.
 
* Триангуляция и определение точки в пространстве.
 
* Ошибка регистрации, максимально правдоподобная гомография
 
* Ошибка регистрации, максимально правдоподобная гомография
* Ризница градиентного метода и метода НЬютона.
+
* Разница градиентного метода и метода НЬютона.
 
* Метод 2d реконструкции
 
* Метод 2d реконструкции
  * эпиполярная линия и эпиполюс (эпипол)
+
** эпиполярная линия и эпиполюс (эпипол)
  * Матрица вектроного произведения
+
** Матрица вектроного произведения
  * Essential matrix
+
** Essential matrix
  
 
http://habrahabr.ru/post/130300/
 
http://habrahabr.ru/post/130300/
 
  
 
=== Лекция 11 ===
 
=== Лекция 11 ===
* Нахождение взаимного пложения камер
+
* Нахождение взаимного положения камер
  * Свойства эпипола
+
** Свойства эпипола
  * Фундаментальная матрица
+
** Фундаментальная матрица
 
* Возможные положения второй камеры
 
* Возможные положения второй камеры
 
* Выражение essential matrix через матрицы двух камер
 
* Выражение essential matrix через матрицы двух камер
 
* Связь essential matrix и фундаментальной матрицы
 
* Связь essential matrix и фундаментальной матрицы
* Положение в пространстве точки по двум проекциям
+
* Положение точки в пространстве по двум проекциям
 
* Machine Learning
 
* Machine Learning
  * Определение  
+
** Определение  
  * C учителем, без учителя
+
** C учителем, без учителя
  
 
http://rudocs.exdat.com/docs/index-375716.html
 
http://rudocs.exdat.com/docs/index-375716.html
 +
 +
http://www.robots.ox.ac.uk/~vgg/hzbook/hzbook1/HZepipolar.pdf
  
 
''Лекция похожа на предыдущую и также непонятна. Читать лучше ссылки выше.''
 
''Лекция похожа на предыдущую и также непонятна. Читать лучше ссылки выше.''
Строка 196: Строка 196:
 
* Ректификация изображений
 
* Ректификация изображений
 
* Disparity
 
* Disparity
  * Вычисление локальными методами
+
** Вычисление локальными методами
  * Глобальными
+
** Глобальными
  * Динамическое программирование
+
** Динамическое программирование
  * Scanline подход
+
** Scanline подход
  
 
http://stackoverflow.com/questions/17607312/difference-between-disparity-map-and-disparity-image-in-stereo-matching
 
http://stackoverflow.com/questions/17607312/difference-between-disparity-map-and-disparity-image-in-stereo-matching
Строка 206: Строка 206:
 
=== Лекция 13 ===
 
=== Лекция 13 ===
 
* Постановка задачи обучения с учителем  
 
* Постановка задачи обучения с учителем  
  * Регрессия, классификация  
+
** Регрессия, классификация  
 
* Персептрон. Определение. Обучение
 
* Персептрон. Определение. Обучение
 
* Feasibility of learning (почему обучение возможно)
 
* Feasibility of learning (почему обучение возможно)
* Неравенство Хёфдинга
+
* Неравенство Хёфдинга (Hoeffding's)
  * Применение в обучении
+
** Применение в обучении
  * Классификаторы и дихатомии
+
** Классификаторы и дихотомии
 
* Линейные классификаторы.
 
* Линейные классификаторы.
 
* Breakpoint.
 
* Breakpoint.
Строка 225: Строка 225:
 
* Задачи распозования лиц и pedestrian detection.
 
* Задачи распозования лиц и pedestrian detection.
 
* Haar-like features.  
 
* Haar-like features.  
  * Идея детектирование по частям.
+
** Идея детектирование по частям.
* Boosting. Weak classifier.  
+
* AdaBoost. Weak classifier.  
  * Случай с невыпуклыми множествами
+
** Случай с невыпуклыми множествами
 
* Histograms of Oriented Gradients
 
* Histograms of Oriented Gradients
 
* SVM. Hard\Soft margin classifier. Нелинейный SVM.
 
* SVM. Hard\Soft margin classifier. Нелинейный SVM.

Текущая версия на 10:59, 11 января 2014

Лектор -

Практика -

Лекции

Python + OpenCV


Видеозаписи распространяются с ограниением
Видео 1.1 (см. комментарии)
Видео 2.1 Видео 2.2
Видео 3.0 Видео 3.1 Видео 3.2
Видео 4.1 Видео 4.2 Видео 4.3 (Темы практик, public)

Домашние задания

Задача по определению движения:

  1. Посчитать фон (варианты: среднее по всем кадрам, скользящее среднее, фиксированный кадр)
  2. Вычислить маску для движения ( |кадр - фон| > T )
  3. Применить cv::dilate для пост-обработки маски, изучить, что делает данный оператор.
  4. Найти на каждом кадре движ. объекты при помощи поиска связанных областей (cv::floodFill)
  5. (*) Сопоставить объекты на соседних кадрах между собой при помощи http://en.wikipedia.org/wiki/Hungarian_algorithm на основе расстояния м\д центрами масс

Тестовые видео брать отсюда: http://iselab.cvc.uab.es/outdoor-cams

Также можно пробовать на http://www.cvc.uab.es/~bagdanov/master/videos.html (Video surveillance sequences)

Видео для тестирования алгоритма стабилизации (также можно пробовать на видео из презентации): https://docs.google.com/file/d/0ByEzmeJ-IkqAYWpkVFkwN1d3eEE/edit?usp=sharing

Вопросы, которые писал один из студентов

Лекция 1

  • Введение. Задачи и проблемы компьютерного зрения.
  • Проблемы КЗ: дисторсия, виды шумов.
  • Соль с перцем, гаусовский шум.
  • Линейный фильтр.

Лекция 2

Рассказ про Python+OpenСV (не представляет теор. интереса)

Лекция 3

  • Шумы: optical blur, motion blur, spatial quantization, additive intesity noise.
  • Свертка. Свертка дискретная. Box фильтр. Медианный фильтр.
  • Производные изображения.
  • Оператор Лапласа.
    • Конечно-разностная схема для оп. Лапласа.
    • Матрицы инвар. к поворотам.
    • Повышение резкости.
  • Повышение резкости с помощью вычитания смазанного изображения.
  • Преобразование Фурье. Дискретное преобразование Фурье.
    • Низкочасточный фильтр.
    • Свойства преобразования.
    • Теорема о свертке.
    • Восстановление изображения.
  • Винеровский фильтр

http://aco.ifmo.ru/el_books/image_processing/

Лекция 4

  • Шум метода фильтрации.
  • Гауссовский фильтр.
  • Фильтр Ярославкого (Билатеральный)
  • Анизатропный фильтр
  • Total variation
  • Non-local means
  • Метрики оценки шума метода. PSNR
  • Block Matching and 3d filtering
    • Цветная фильтрация и видео
  • Вариационный метод восстановления изображения

http://courses.graphicon.ru/files/courses/vision/2011/lectures/cv2011_04_representation.pdf

Лекция 5

  • Пирамида гауссианов
    • Восстановление изображения по пирамиде.
    • Возможность локальной обработки изображения.
    • Пирамиды как фильтр нижних частот.
  • Обзор вейвлет разложений.
    • Локальность представления.
    • Пример детектирования текстуры дерева.
  • Детектирование "особенностей" изображения
    • Уголки, критерии уголка
    • Разница гауссианов в пирамиде.
  • SIFT дескриптор. Построение. Свойства.
  • Дескриптор HOG (Histogram of oriented gradients)
  • Детекторы дескрипторов, kd-деревья для разбиения дискрипторов.

http://robocraft.ru/forum/viewtopic.php?t=227

Лекция 6

  • Энтропия, Избыточность, связь с сжатием.
  • Код Хффмана. Арифметическое кодирование, LZW.
  • Сжатие картинок.
  • MLP кодирование.
  • Восприятие человека. Сжатие с потерями.
    • Прогрессирующее декодирование. Пирамиды. Частоты.
  • Метрики ошибок. PSNR.
  • Декореляция изображений. Умножение на ортготональную матрицу.
  • Блочное сжатие. Обзор JPEG. Квантизация.
  • Обзор сжатия видео.

http://habrahabr.ru/post/180803/

Лекция 7

  • Контуры
    • Определение детекции краев. Применение.
    • Обзор детекторов краев.
    • Детектор контуров. Кодирование и обработка контуров.
    • Выделение линий. Hough transform.
  • Проективная геометрия.
    • История и польза.
    • Классы эквивалентности.
    • Соответствие векторов R^n и R^(n+1).
    • Точки и направления.
    • Соответсвие прямых в R^n и точек в R^(n+1).
    • Смысл векторного произведения проективных векторов.
    • Проективные преобразования
      • Гомография
      • Нахождения гомографии по точкам

http://habrahabr.ru/post/126269/

Лекция 8

  • Нахождение гомографии (детально).
  • Нахождение гомографии с шумом.
    • Минимизация расстояний
    • Ошибка перепроктирования
  • Итеративный метод оптимизации
    • Функция стоимости, параметризация.
    • Градиентный спуск.
  • Проблема неправильного матчинга точек (outliers)
    • Идея метода RanSaC
  • Проективная модель камеры.
    • Система координат камеры.
    • Проектирование на плоскость камеры.
      • Матрица проектирования.
      • Проектирование с учетом измерений в пикселях.
      • Учет переноса и поворота камеры.

Лекция 9

  • Внутренние и внешние параметры камеры, их матрицы.
  • Алгоритм RanSaC
  • Модель мира.
    • Проективная камера и плоскость в мире.
    • Линия горизонта.
    • Точка зенита.
    • Угол между двумя прямыми
    • Расстояние между предметами
  • Определение положения камеры

http://courses.cs.washington.edu/courses/cse576/08sp/lectures/Projective.ppt

Лекция 10

  • Модель двух камер
  • Нахождение матрицы проекции
    • Запись системы с неизвестными с нормой 1.
    • Обзор SVD разложения.
  • Триангуляция и определение точки в пространстве.
  • Ошибка регистрации, максимально правдоподобная гомография
  • Разница градиентного метода и метода НЬютона.
  • Метод 2d реконструкции
    • эпиполярная линия и эпиполюс (эпипол)
    • Матрица вектроного произведения
    • Essential matrix

http://habrahabr.ru/post/130300/

Лекция 11

  • Нахождение взаимного положения камер
    • Свойства эпипола
    • Фундаментальная матрица
  • Возможные положения второй камеры
  • Выражение essential matrix через матрицы двух камер
  • Связь essential matrix и фундаментальной матрицы
  • Положение точки в пространстве по двум проекциям
  • Machine Learning
    • Определение
    • C учителем, без учителя

http://rudocs.exdat.com/docs/index-375716.html

http://www.robots.ox.ac.uk/~vgg/hzbook/hzbook1/HZepipolar.pdf

Лекция похожа на предыдущую и также непонятна. Читать лучше ссылки выше.

Лекция 12

  • Ректификация изображений
  • Disparity
    • Вычисление локальными методами
    • Глобальными
    • Динамическое программирование
    • Scanline подход

http://stackoverflow.com/questions/17607312/difference-between-disparity-map-and-disparity-image-in-stereo-matching


Лекция 13

  • Постановка задачи обучения с учителем
    • Регрессия, классификация
  • Персептрон. Определение. Обучение
  • Feasibility of learning (почему обучение возможно)
  • Неравенство Хёфдинга (Hoeffding's)
    • Применение в обучении
    • Классификаторы и дихотомии
  • Линейные классификаторы.
  • Breakpoint.
  • VC dimension.
  • Input\Output ошибка, bias, genaralization error.
  • Выбор размерности решения в зависимости от тестовых данных.
  • Пример сведения классификатора "круг" к линейному классификатору.
  • Cascade Classification

http://work.caltech.edu/library/053.html

Лекция 14

  • Задачи распозования лиц и pedestrian detection.
  • Haar-like features.
    • Идея детектирование по частям.
  • AdaBoost. Weak classifier.
    • Случай с невыпуклыми множествами
  • Histograms of Oriented Gradients
  • SVM. Hard\Soft margin classifier. Нелинейный SVM.

Список литературы

Ссылки