Лекции opencv: 1. Введение. Задачи анализа изображений
TRANSCRIPT
с/к Анализ изображений, OpenCV
1. Введение. Задачи анализа изображений
УрГУ / ИММ осень 2011лекции и объявления: вопросы отправляйте на адрес www.uralvision.blogspot.com [email protected]
http://mimikirchner.com/blog/images/4:20:robots.jpghttp://s2.hubimg.com/u/1343513_f260.jpg
Введение
На спецкурсе будут:1. Постановки и методы решения задач анализа, обработки и распознавания цифровых изображений.2. Практика реализации алгоритмов на OpenCV.
Не будет:1. Основ программирования C++.2. Основ обработки изображений в Photoshop и Gimp.3. Нейросетей.
Введение
Под задачей обработки изображения мы будем понимать задачу построения алгоритма для автоматического анализа изображения компьютером с целью извлечения некоторой информации из изображения.
В частности, вопросам улучшения изображений для восприятия человеком мы будем уделять немного времени.
Когда возникает задача обработки изображений?
Типы задач обработки изображений
Обнаружение
Поиск отдельных объектов на изображении (областей, контуров), измерение размеров и т.д. без конкретизации того, какие это объекты.
Интерпретация
Определение типа некоторого объекта на изображении.
Обнаружение
Сегментация
- разбиение изображения на области.Методы: текстурный анализ, анализ контуров.
Анализ движения- анализ последовательных кадрах для выяснения направлениядвижения объектов в кадре.Методы: вычисление оптического потока.
Восприятие глубины- использование двух камер для оценки расстояния до объектов.Методы: стереозрение.
Кадр с левой камеры Кадр с правой камеры
Вычисленная карта расстояний
Слежение за интересующим объектом- вычисление координат объекта на последовательности кадровМетоды: трекинг.
http://www.merl.com/projects/images/particle.jpg
Отделение объекта от фона- выделение областей пикселов, являющихся "объектами", а не "фоном"Методы: обучение фону для последующего отделения, стереозрение, оптический поток.
Интерпретация
Распознавание типов объектов- анализ текстур.
Методы: вычисление вектора текстурных признаков и последующая классификация.
http://www.gisdevelopment.net/technology/ip/ma03029a.htm
Поиск известных объектовМетоды: сопоставление с эталоном, алгоритм Виолы-Джонса.
Измерение размеров объектовМетоды: предварительная калибровка камеры, затем поиск объектов и интересующих точек на для измерения размера.
Калибровка камеры
Распознавание жестовМетоды: скрытые марковские модели.
http://paloma.isr.uc.pt/gesture-reco/pics/gestureLib.jpg
Ориентация в пространствеМетоды: калибровка камеры, исправление перспективных искажений, сопоставление с эталоном по ключевым признакам.
http://www.ics.forth.gr/ae-printerfriendly/cvrl/demos/pan_nav/pan_nav.html
ЛитератураКомпьютерное зрение1. Гонсалес Р., Вудс Р. Цифровая Обработка Изображений.2. Л. Шапиро, Дж. Стокман,. «Компьютерное зрение».
OpenCV1. Документация OpenCV 2.1 C++: http://opencv.willowgarage.com/documentation/cpp/index.html
2. Gary Bradski,Adrian Kaehler, Learning OpenCV: Computer Vision with the OpenCV Library- к сожалению, для версии OpenCV для C, а не C++.
Философские проблемы распознаванияМ.М. Бонгард, Проблема узнавания. 1967 год.
Домашнее задание
1. Установить Visual Studio C++ 2008 Express Edition.2. Установить OpenCV 2.1.3. Запустить несколько примеров из папки OpenCV2.1\samples\c\.