Computer vision 2013

Материал из SEWiki
Перейти к: навигация, поиск

Лектор -

Практика -

Лекции

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.

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

Ссылки