103
Компьютерное зрение

CV2011 Lecture 1. Part 1. Introduction to computer vision

Embed Size (px)

Citation preview

Page 1: CV2011 Lecture 1. Part 1. Introduction to computer vision

Компьютерное зрение

Page 2: CV2011 Lecture 1. Part 1. Introduction to computer vision

Общая информация

Страница курса http://courses.graphicon.ru/main/vision

Этот курс подготовлен и читается при поддержке

Microsoft Research

Page 3: CV2011 Lecture 1. Part 1. Introduction to computer vision

О лекторе

• Лаб. компьютерной графики и мультимедиа• Научный сотрудник, к.ф-м.н.,

руководитель группы компьютерного зрения

• Курсы:• С/к «Введение в компьютерное зрение»

(весна) • С/к «Доп. главы компьютерного зрения»

(осень)• «Компьютерная графика»• С/к «Анализ изображений и видео» (год),

ШАД Яндекс • E-mail: [email protected]

Антон Конушин

Page 4: CV2011 Lecture 1. Part 1. Introduction to computer vision

Об ассистенте

• Аспирант 1-го года ВМК МГУ

• Лаб. комп. графики и мультимедиа

• Группа компьютерного зрения

[email protected]

Александр Чигорин

Page 5: CV2011 Lecture 1. Part 1. Introduction to computer vision

Учебники

Форсайт, Понс «Компьютерное зрение: современный подход»

R.Szeliski «Computer vision: Algorithm and applications» http://research.microsoft.com/en-us/

um/people/szeliski/Book/

Page 6: CV2011 Lecture 1. Part 1. Introduction to computer vision

План лекции

• Введение в компьютерное зрение• Что это такое• Почему это сложно• История компьютерного зрения• Современные достижения• Задачи, решаемые в лаборатории

• Обзор программы курса• Компьютерное зрение и зрение человека

• Изображение• Камера и глаз• Цвет и баланс белого

Page 7: CV2011 Lecture 1. Part 1. Introduction to computer vision

Задача компьютерного зрения• Понять, что запечатлено на изображении

Мы видим Компьютер видит

Source: S. Narasimhan

Page 8: CV2011 Lecture 1. Part 1. Introduction to computer vision

Задача компьютерного зрения

• «To see means to know what is where by looking»• David Marr, Vision, 1982

• Понять, что запечатлено на изображении

• Что это в действительности обозначает?• Зрение - источник семантической информации о мире• Зрение - источник метрической информации о трехмерном

мире

Page 9: CV2011 Lecture 1. Part 1. Introduction to computer vision

Семантическая информация

Slide credit: Fei-Fei, Fergus & Torralba

Page 10: CV2011 Lecture 1. Part 1. Introduction to computer vision

Классификация сцены• вне помещения• город• уличное движение• Пекин, Китай• Пл. Тяньаньмэнь

slide credit: Fei-Fei, Fergus & Torralba Slide 10

Page 11: CV2011 Lecture 1. Part 1. Introduction to computer vision

Slide credit: Fei-Fei, Fergus & Torralba

Поиск и локализация объектов

Здание

Флаг

Slide 11

Автобус Автобус

ЛицоТекст

Page 12: CV2011 Lecture 1. Part 1. Introduction to computer vision

Семантическая сегментация

14.04.2023 Slide 12

Небо

Автомобиль Автомобиль

Строения

Page 13: CV2011 Lecture 1. Part 1. Introduction to computer vision

Качественная информация

наклонная

Жесткий, движется

горизонтальный

Мао

slide credit: Fei-Fei, Fergus & Torralba

Жесткий, движется

Нежесткий, движется

Slide 13

Голубое

Ветер справа налево

Page 14: CV2011 Lecture 1. Part 1. Introduction to computer vision

Метрическая информация

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

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

NASA Mars Rover

Pollefeys et al.

Моделирование по пользовательским

снимкам

Goesele et al.Slide: Svetlana Lazebnik

Page 15: CV2011 Lecture 1. Part 1. Introduction to computer vision

Смежные дисциплины

Википедия

Page 16: CV2011 Lecture 1. Part 1. Introduction to computer vision

Зрение… принятые названия

• Обработка изображений (Image processing)• На входе и выходе изображение

• Анализ изображений (Image analysis)• Фокусируется на работе с 2D изображениями

• Распознавание образов (Pattern recognition)• Распознавание, обучение на абстрактных числовых величинах,

полученных в том числе и из изображений• Компьютерное зрение (Сomputer vision)

• Изначально воостановление 3д структуры по 2д изображениям, сейчас шире, как принятие решений о физических объектах, основываясь на их изображениях

• Фотограмметрия (Photogrammetry) • Исторически измерение расстояний между объектами по 2D

изображениям• Машинное зрение (Мachine vision)

• Обычно понимается как решение промышленных, производственных задач (сложилось исторически)

Page 17: CV2011 Lecture 1. Part 1. Introduction to computer vision

Зачем?

• Полезно – много практических применений• Интересно – наглядное применение массы

математических методов• Сложно

• 25+% мозга человека отвечает за зрение• «ИИ-полная» задача – решение задачи зрения на

уровне человека равносильно решению задачи искусственного интеллекта

Page 18: CV2011 Lecture 1. Part 1. Introduction to computer vision

Почему зрение – это сложно?

Page 19: CV2011 Lecture 1. Part 1. Introduction to computer vision

Michelangelo 1475-1564

slide credit: Fei-Fei, Fergus & Torralba

Точка наблюдения

Page 20: CV2011 Lecture 1. Part 1. Introduction to computer vision

Освещение

image credit: J. Koenderink

Page 21: CV2011 Lecture 1. Part 1. Introduction to computer vision

Масштаб

Slide credit: Fei-Fei, Fergus & Torralba

Page 22: CV2011 Lecture 1. Part 1. Introduction to computer vision

Деформация

Xu, Beihong 1943

Slide credit: Fei-Fei, Fergus & Torralba

Page 23: CV2011 Lecture 1. Part 1. Introduction to computer vision

Перекрытие

Magritte, 1957

slide credit: Fei-Fei, Fergus & Torralba

Page 24: CV2011 Lecture 1. Part 1. Introduction to computer vision

Маскировка

Page 25: CV2011 Lecture 1. Part 1. Introduction to computer vision

Движение

Page 26: CV2011 Lecture 1. Part 1. Introduction to computer vision

Внутриклассовая изменчивость

Slide credit: Fei-Fei, Fergus & Torralba

Page 27: CV2011 Lecture 1. Part 1. Introduction to computer vision

Контекст

Полено Стул

Page 28: CV2011 Lecture 1. Part 1. Introduction to computer vision

Локальная неоднозначность

Slide credit: Fei-Fei, Fergus & Torralba

Page 29: CV2011 Lecture 1. Part 1. Introduction to computer vision

Сложности или возможности?

• Изображение запутывает, но дает много подсказок • Наша задача – интерпретировать подсказки

Image source: J. Koenderink

Page 30: CV2011 Lecture 1. Part 1. Introduction to computer vision

Цвет

Page 31: CV2011 Lecture 1. Part 1. Introduction to computer vision

Тени и освещение

Source: J. Koenderink

Page 32: CV2011 Lecture 1. Part 1. Introduction to computer vision

Отбрасываемые тени

Source: J. Koenderink

Page 33: CV2011 Lecture 1. Part 1. Introduction to computer vision

Группировка

Image credit: Arthus-Bertrand (via F. Durand)

Page 34: CV2011 Lecture 1. Part 1. Introduction to computer vision

Глубина: линейная перспектива

Page 35: CV2011 Lecture 1. Part 1. Introduction to computer vision

Текстура

Page 36: CV2011 Lecture 1. Part 1. Introduction to computer vision

Упорядочивание по глубине

Source: J. Koenderink

Page 37: CV2011 Lecture 1. Part 1. Introduction to computer vision

Туман и фокусировка

Page 38: CV2011 Lecture 1. Part 1. Introduction to computer vision

Резюме

• Зрение изначально нечеткая задача• Разные 3D сцены дают одно и то же 2D изображение• Необходимы априорные знания о структуре и свойствах мира

Image source: F. Durand

Page 39: CV2011 Lecture 1. Part 1. Introduction to computer vision

История: Камера-обскура

Принцип был известен еще Аристотелю (384-322 до Н.Э.)

Page 40: CV2011 Lecture 1. Part 1. Introduction to computer vision

“Magic Lantern”, 1492

Page 41: CV2011 Lecture 1. Part 1. Introduction to computer vision

1525

Page 42: CV2011 Lecture 1. Part 1. Introduction to computer vision

Первая фотография

Самая первая фотография

1825 год

Требовала 8 часов проявки

Page 43: CV2011 Lecture 1. Part 1. Introduction to computer vision

Фотограмметрия

1837 – первые практически применимые фотографии

1840 – «Фотограмметрия – будущее геодезии»

Page 44: CV2011 Lecture 1. Part 1. Introduction to computer vision

Видео

1878 – первая скоростная съемка, Eadweard Muybridge

1888 – первое кино на плёнке, Louis Le Prince

Page 45: CV2011 Lecture 1. Part 1. Introduction to computer vision

Электронно-лучевая трубка(CRT)

1885 – изобретение СRT

1897 – СRT c флуоресцентным

экраном

Page 46: CV2011 Lecture 1. Part 1. Introduction to computer vision

1896: Стереофотограмметрия

Стереокамера и

теодолит

Page 47: CV2011 Lecture 1. Part 1. Introduction to computer vision

Растровый дисплей – 1927 год

Philo Farnsworth – 60-строчный растровый дисплей

Page 48: CV2011 Lecture 1. Part 1. Introduction to computer vision

Whirlwind, MIT, 1951

• Первый компьютер, отображающий текст и графику в реальном времени на мониторе

• Точками карту, значком самолёт.• «Световое перо» для взаимодействия с экраном

(запрос информации об объекте)

Page 49: CV2011 Lecture 1. Part 1. Introduction to computer vision

1957 - 1967

Аналоговые сопоставители изображений

Page 50: CV2011 Lecture 1. Part 1. Introduction to computer vision

“The Boing man”, 1960

Первое компьютерное изображение человека

Page 51: CV2011 Lecture 1. Part 1. Introduction to computer vision

Зарождение компьютерного зрения

L. G. Roberts, Machine Perception of Three Dimensional Solids, Ph.D. thesis, MIT Department of Electrical Engineering, 19601963.

Page 52: CV2011 Lecture 1. Part 1. Introduction to computer vision

Spacewar, MIT, 1961

• Steve Russell, 200 человеко-месяцев

Page 53: CV2011 Lecture 1. Part 1. Introduction to computer vision

SketchPad, MIT, 1963

• Ivan Sutherland демонстрирует интерактивный графический редактор SketchPad

Page 54: CV2011 Lecture 1. Part 1. Introduction to computer vision

CAD, IBM + GM, 1964

Первая СAD-система, геометрические преобразования (поворот, вращение)

Page 55: CV2011 Lecture 1. Part 1. Introduction to computer vision

IBM 2250, Adage

1024x1024 векторный дисплей, стыковался к

IBM 360

Первая отдельная графическая станция,

быстрый дисплей (вращение без

мерцания)

Page 56: CV2011 Lecture 1. Part 1. Introduction to computer vision

Virtual Reality, Harvard, 1968

• Ivan Sutherland перешел в Гарвард, где разработал первый Head Mounted Display (HMD)

• Виртуальная комната (wireframe), в которую можно войти

Page 57: CV2011 Lecture 1. Part 1. Introduction to computer vision

Utah, 1968 и далее• Hidden surface (Romney, Warnock, Watkins)• scan line coherence (Watkins)• Rendering (Crow, Blinn, Newell, Catmull, Clark,

etal)• z-buffer (Catmull)• Patch rendering (Catmull)• Texture mapping (Catmull, Blinn, Newell)• Shadows (Crow)• Antialiasing (Crow)• Shading (Phong, Gouraud)• Lighting (Phong, Blinn)• Atmospheric effects (Blinn)• Environment mapping (Blinn, Newell)• Blobby surfaces (Blinn)• Facial animation (Parke)• Procedural modeling (Newell)• Splines (Riesenfeld, Lyche, Cohen)• Beta-splines (Barsky)

Page 58: CV2011 Lecture 1. Part 1. Introduction to computer vision

Freddy II, 1973• Университет Эдинбурга• Один из первых роботов

с системой машинного зрения

• 5 степеней свободы• Умеет собирать

машинки из кубиков, разбросанных по столу

• 384Кб RAM в управляющем компьютере

Page 59: CV2011 Lecture 1. Part 1. Introduction to computer vision

Давид Марр (1970е)

• «Primal sketch»• Низкоуровневые («low-level») свойства

изображения: направленные края, отрезки и т.д.

• «2.5D sketch»• Упорядочивание по глубине (бинокулярное

стерое), учёт текстуры и т.д.

• «3D model»• Распознавание объектов и представление о

3х мерном мире

Page 60: CV2011 Lecture 1. Part 1. Introduction to computer vision

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

• Изображения и видео повсюду• Бурно растущая область

• Обработка – улучшение качества, ретушь, изменение размера и формы, композиция

• Интернет – поиск, аннотация, поиск дубликатов, распознавание объектов

• Видеонаблюдение – отслеживание, распознавание объектов, распознавание жестов и событий

• Промышленные системы – диагностика, контроль качества• Спецэффекты в кино – композиция, монтаж фонов, захват

движения

Page 61: CV2011 Lecture 1. Part 1. Introduction to computer vision

Распространение изображений

Personal photo albums

Surveillance and security

Movies, news, sports

Medical and scientific images

Page 62: CV2011 Lecture 1. Part 1. Introduction to computer vision

Распознавание текста

Digit recognition, AT&T labshttp://www.research.att.com/~yann/ License plate readers

http://en.wikipedia.org/wiki/Automatic_number_plate_recognition

Source: S. Seitz

Page 63: CV2011 Lecture 1. Part 1. Introduction to computer vision

Детектор лиц (2001)

Алгоритм Viola-Jones – первый быстрый и надежный алгоритм поиска лиц. Демонстрация силы машинного

обучения.

Source: S. Seitz

Page 64: CV2011 Lecture 1. Part 1. Introduction to computer vision

Поиск улыбки

Sony Cyber-shot® T70 Digital Still Camera Source: S. Seitz

Page 65: CV2011 Lecture 1. Part 1. Introduction to computer vision

Распознавание лиц

Кто она?

Source: S. Seitz

Page 66: CV2011 Lecture 1. Part 1. Introduction to computer vision

Биометрия

“How the Afghan Girl was Identified by Her Iris Patterns” Read the story

Source: S. Seitz

Page 67: CV2011 Lecture 1. Part 1. Introduction to computer vision

Биометрия

Fingerprint scanners on many new laptops, other devices

Face recognition systems now beginning to appear more widelyhttp://www.sensiblevision.com/

Source: S. Seitz

Page 68: CV2011 Lecture 1. Part 1. Introduction to computer vision

iPhone Apps: (www.kooaba.com)

Page 69: CV2011 Lecture 1. Part 1. Introduction to computer vision

Распознавание объектов

• Microsoft Research

Source: S. Seitz

Page 70: CV2011 Lecture 1. Part 1. Introduction to computer vision

Умные машины

• Mobileye• Топ-модели от BMW, GM, Volvo• К 2010: 70% производителей машин

Source: S. Seitz

Page 71: CV2011 Lecture 1. Part 1. Introduction to computer vision

Умные машины

Page 72: CV2011 Lecture 1. Part 1. Introduction to computer vision

The Matrix movies, ESC Entertainment, XYZRGB, NRC

3D модели для кино

Source: S. Seitz

Page 73: CV2011 Lecture 1. Part 1. Introduction to computer vision

Pirates of the Carribean, Industrial Light and Magic

Захват движения

Source: S. Seitz

Page 74: CV2011 Lecture 1. Part 1. Introduction to computer vision

Спортивные соревнования

Sportvision first down lineNice explanation on www.howstuffworks.com

Source: S. Seitz

Page 75: CV2011 Lecture 1. Part 1. Introduction to computer vision

Зрение в космосе

Системы зрения использовались для:• Склейка панорам• 3D моделирование местности• Поиск препятствий, определение местоположения• Подробнее см. “Computer Vision on Mars” by Matthies et al.

NASA'S Mars Exploration Rover Spirit.

Source: S. Seitz

Page 76: CV2011 Lecture 1. Part 1. Introduction to computer vision

Интерфейсы: Kinect

• Ролик NATAL

Page 77: CV2011 Lecture 1. Part 1. Introduction to computer vision

Зрение роботов

http://www.robocup.org/NASA’s Mars Spirit Roverhttp://en.wikipedia.org/wiki/Spirit_rover

Source: S. Seitz

Page 78: CV2011 Lecture 1. Part 1. Introduction to computer vision

Трехмерные карты

Image from Microsoft’s Virtual Earth(see also: Google Earth)

Source: S. Seitz

Page 79: CV2011 Lecture 1. Part 1. Introduction to computer vision

PhotoSynth

Page 80: CV2011 Lecture 1. Part 1. Introduction to computer vision

PhotoSynth

Page 81: CV2011 Lecture 1. Part 1. Introduction to computer vision

Примеры наших задач

• 3D реконструкция зданий• Дорожные лаборатории• Видеонаблюдение• Разные задачи

Page 82: CV2011 Lecture 1. Part 1. Introduction to computer vision

Реконструкция городов

Page 83: CV2011 Lecture 1. Part 1. Introduction to computer vision

Дорожные лаборатории

Page 84: CV2011 Lecture 1. Part 1. Introduction to computer vision

Видеонаблюдение

Page 85: CV2011 Lecture 1. Part 1. Introduction to computer vision

Разное (MSR)

Поиск текста в изображениях

Мягкая сегментация видео

Page 86: CV2011 Lecture 1. Part 1. Introduction to computer vision

Структура курса

• 13 лекций• 4 домашних задания

• Оценки за задания (2...5)• Оценка за курс по заданиям• М.б. письменные упражнения

• Задания на Матлаб• Удобнее и проще, чем на С++/С#• Будет занятие по Матлабу!

• Вопросы:• В форум – http://forum.graphicon.ru

Page 87: CV2011 Lecture 1. Part 1. Introduction to computer vision

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

Система распознавания автомобильных номеров в 3х частях Распознавание цифр Поиск номеров в изображении Распознавание всего номера

Данные предоставлены компанией ISS: www.iss.ru

Page 88: CV2011 Lecture 1. Part 1. Introduction to computer vision

Программа курса

• Введение в компьютерное зрение (весна)• Low-level vision

– Обработка изображений и локальные особенности• Mid-level vision

– Сопоставление изображений и методы группировки, сегментация

• High-level vision– Распознавание изображений, поиск изображений

• Разные задачи

• Доп. Главы компьютерного зрения (осень)• Анализ видео и видеонаблюдение• Анализ изображений человека (лицо, поза)• Трёхмерная реконструкция по изображениям

Page 89: CV2011 Lecture 1. Part 1. Introduction to computer vision

Обработка изображений

Linear filteringEdge detection

* =

Page 90: CV2011 Lecture 1. Part 1. Introduction to computer vision

Представление изображений

• Частотная фильтрация изображения, JPEG• Пирамиды изображений• Словари, разреженное представление

Page 91: CV2011 Lecture 1. Part 1. Introduction to computer vision

Локальные особенности

(x,y)

(x0,y0)r

s

Извлечение, описание, сопоставление

Page 92: CV2011 Lecture 1. Part 1. Introduction to computer vision

Сопоставление изображений

Fitting: Least squaresHough transformRANSAC

Alignment

Page 93: CV2011 Lecture 1. Part 1. Introduction to computer vision

Категоризация изображений

+ Методы классификации и машинного обучения

Page 94: CV2011 Lecture 1. Part 1. Introduction to computer vision

Машинное обучение

• Метод опорных векторов• Бустинг• Оценка классификаторов

Page 95: CV2011 Lecture 1. Part 1. Introduction to computer vision

Поиск и локализация объектов

Page 96: CV2011 Lecture 1. Part 1. Introduction to computer vision

Методы на коллекциях картинок

Page 97: CV2011 Lecture 1. Part 1. Introduction to computer vision

Поиск изображений в базе

Page 98: CV2011 Lecture 1. Part 1. Introduction to computer vision

Сегментация изображений

JSEG

Page 99: CV2011 Lecture 1. Part 1. Introduction to computer vision

Семантическая сегментация

Page 100: CV2011 Lecture 1. Part 1. Introduction to computer vision

Цифровой фотомонтаж

Page 101: CV2011 Lecture 1. Part 1. Introduction to computer vision

Часть 2: Анализ видео

Page 102: CV2011 Lecture 1. Part 1. Introduction to computer vision

Часть 2: Изображения человека

Articulated modelsMotion and tracking

Page 103: CV2011 Lecture 1. Part 1. Introduction to computer vision

Часть 2: Трехмерная реконструкция