SlideShare une entreprise Scribd logo
1  sur  118
Télécharger pour lire hors ligne
Анализ и распознавание лиц




                Антон Конушин
       Computer science club, Екатеринбург
            13-15 апреля 2012 года
План

• Выделение контрольных точек на лице и
  построение модели головы
• Анализ изображений лиц
• Построение анимированных 3D моделей
Контрольные точки

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




• Обычные алгоритмы выделения объектов (HOG +
  SVM, Haar + Boosting) не справляются с задачей
• Слишком простая структура области, недостаточно
  информации для надежного выделения
Геометрические ограничения
          • На помощь приходит следующее
            наблюдение
          • Между расположением
            антропометрических точек на лице
            есть зависимости
          • Нужно как-то смоделировать эти
            зависимости
          • Желательно, чтобы количество
            параметров, которые описывают
            зависимости, было поменьше, чем
            число точек x 2
Модель формы
 • Набор размеченных изображений
 • Метки задают положение характерны точек
 • Построим статистическую модель




T.F. Cootes, C.J. Taylor, D.H. Cooper and J. Graham, Training Models of Shape
from Sets of Examples. in Proc. British Machine Vision Conference. Springer-
Verlag, 1992, pp.9-18
Выравнивание изображений




• «Прокрустов» анализ – совместим все
  размеченные изображения насколько можно
• Процедура
  • Совмещаем все экземпляры с первым
  • Повторяем до сходимости
     – Вычисление средней формы
     – Нормализация средней формы
        » Либо совмещением её с первым экземпляром
        » Либо к какому-либо фиксированному нормальному варианту
Статистическая модель

                 Можем теперь вычислить
                 статистическую модель положения
                 каждой контрольной точке на лице
                 человека

                 Но нам этого недостаточно, мы
                 хотим извлечь зависимости между
                 положениями точек (и поменьше
                 параметров)
Идея: пусть все координаты всех точек составляют один
вектор из некоторого распределения. Попробуем его
смоделировать и применим к нему какой-нибудь метод
понижения размерности
Метод главных компонент




    •    Задача - аппроксимация данных векторами меньшей размерности
    •    Изначально прямыми и плоскостями (Пирсон, 1901)

•       Пусть наш вектор – элемент из многомерного
        нормального распределения
•       Перейдём к новому базису
•       Базисные вектора – собственные вектора
        матрицы ковариации
•       Можем взять только первых K координат в
        новом базисе
Построение модели формы
• Даны выровненные объекты   {x i }
• Применяем МГК (PCA):
             x  x  Pb
• P – Первые t собственных векторов
• b – Параметры модели формы
                   T
            b  P (x  x )
• Допустимые пределы варьирования параметров:
               |bi|  3 λi

• Можем использовать эту модель для синтеза
  произвольных лиц
Пример




Варьируем b1   Варьируем b2 Варьируем b3
Пример: Структуры мозга




 С этим подходом много экспериментировали в обработке
 медицинских изображений
Активная Модель Формы
• Получили модель формы
• Как использовать ее для анализа
  изображений, т.е. для нахождения
  характерных точек?
• “Active Shape Model” - итеративный
  метод сопоставления модели
  изображению
    • Модель формы позволяет проверить
      возможность текущей конфигурации точек и
      исправить ошибки
    • Модель формы также позволит уточнить
      положение контрольных точек



D. Cristinacce and T.F. Cootes, "Facial Feature Detection using ADABOOST with Shape
Constraints", Proc.BMVC2003, Vol.1,pp.231-240
Детектор контрольных точек




• Обучим с помощью бустинга детектор
  контрольных точек
• Откалибруем выход для ранжирования откликов
  по правдоподобию
• Возьмём по N самых надежных откликов каждого
  детектора
Схема алгоритма

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

• Схема:
  1. Отсортируем отклики детекторов точек по качеству
  2. Пусть i=1
  3. Возьмём i самых сильных отликов для каждой точки
  4. Составим список всех гипотез
  5. Проверим все гипотезы
  6. Если все гипотезы не удовлетворяют модели формы, тогда
     i=i+1 и возврат на шаг 3
  7. Выберем из подходящих гипотез ту, у которой суммарный
     отклик черт наибольший
Учет ограничений модели

• Жесткие ограничения

  • Минимизируем   | X  T ( x  Pb) |2

                                         Dmax  3

• Мягкие ограничения
  • Минимизируем
          1                  2      2
        | T ( X )  ( x  Pb) | /   r    log( p(b))
• Можем добавить веса, учитывающие качество
  локального сопоставления
Использование классификаторов




   •   Заменим детектор на регрессию смещения
       •   Регрессия оценивает вектор смещения истинного положения точки от
           измеренного
       •   Можем использовать больше точек
   •   Аналогично итерируем:
       •   Поиск новых положений черт в окрестности текущих
       •   Регуляризация с помощью модели формы

David Cristinacce and Tim Cootes, Boosted Regression Active Shape Models, BMVC
2007
Пример работы алгоритма
Модели внешности

• «Appearance models»
• Статистическая модель,
  кодирующая совместно форму и
  текстуру
• Мотивация
     •   Использование всего изображения объекта




T.F.Cootes, G.J. Edwards and C.J.Taylor. "Active Appearance Models", in Proc. European
Conference on Computer Vision 1998 (H.Burkhardt & B. Neumann Ed.s). Vol. 2, pp. 484-
498, Springer, 1998.
Построение


• Строим вектор формы по каждому примеру



                      Форма x = (x1,y1, … , xn, yn)T




• Строим модель   x  x  Ps b s
Построение


• Строим вектор текстуры


                         Форма x = (x1,y1, … , xn, yn)T




                                            Текстура, g


     Трансформируем (warping) текстуру к усредненной форме
Построение модели

• Строим вектор текстуры для каждого примера



                                     Текстура, g


• Нормализуем вектора
• PCA


                             g  g  Pg b g
Общая модель
• Изменения формы и текстуры обычно
  коррелируют
   • При улыбке, изменяются тени (текстура) и форма
   • Нужно моделировать одновременно
• Для каждого примера оцениваем b s , b g

                             Wb s 
• Строим общий вектор, bc        
                             bg 
                                  
                     Qs 
• PCA    b c  Qc      
                     Q c
                     g
                                      x  x  WPs Qs c
                                      g  g  Pg Q g c
Модель внешности лица




          2 1   b1    2 1




          2 2   b2    2 2
Пример поиска лица




Для совместных моделей можно сделать итеративный
алгоритм, апроксимирующий градиентный спуск
Пример для структур мозга
3D модели лица
•   В обычных условиях лицо
    снимается с разных точек зрения

•   2D модель не всегда может
    корректно учесть всё множество
    допустимых трансформаций

•   Единственный выход – учитывать
    3D искажения за счёт
    использование 3D модели
                                      Вход   Выход
•   Задача построение 3D модели по
    одному/нескольким изображениям
Постановка задачи

       Вход                  Выход
• Изображение с лицом • Трёхмерная
• Примерное           полигональная модель
положение лица        лица
                        • Должна хорошо
                        приближать входное
                        изображение
                     • Параметры
                     положения камеры
                     относительно модели
Трёхмерная модель
• Трёхмерная «метамодель», генерирующая
  полигональные модели
  200 сканов Cyberware ™
Построение модели
Подгонка модели к изображению

• Минимизировать невязку




• Iinput – входное изображение
• Imodel – изображение (рендеринг) модели
• Ω - область лица на входном изображении

 • Инициализируем параметры модели
 • Варьируем параметры, визуализируем модель,
   сравниваем с изображением и ищем оптимальную
   комбинацию параметров
Применение к изображениям
Редактирование фотографий




  •   Задача:
      • Перенести выражение лица человека с одной фотографии на
        другую.
  •   Идея:
      • Построим 3D модели лица для обоих изображений и рассчитаем с
        их помощью преобразование изображений

Fei Yang et.al. Expression Flow for 3D-Aware Face Component Transfer, ACM
Transactions on Graphics (Proc. SIGGRAPH), 2011
Примеры
Примеры
Примеры




  Резульат   2D фотомонтаж без
                3D уточнения
Примеры
Резюме
• Отдельные черты лица найти невозможно, нужно
  искать их в совокупности с помощью модели
  лица/головы
• 2D модели не учитывают многих факторов, но
  работают для хороших ракурсов/изображений
• 3D модели потенциально очень мощные, но
  оценивать их сейчас тяжело, особенно в сложных
  условиях (неравномерное освещение и т.д.)
План

• Выделение контрольных точек на лице и
  построение модели головы
• Анализ изображений лиц
• Построение анимированных 3D моделей
Верификация




  На обоих изображениях один и тот же человек, или нет?

Базовая задача распознавания лиц, которую и человеку проще
                       всего решать
Идентификация




•   Есть фиксированный список людей (база) и тестовое
    изображении
•   Нужно определить, кто из списка изображени на тестовой
    фотографии?
«Watch List»




•   Есть список «подозрительных людей»
•   Необходимо определить, входит ли человек в этот список
    по его фотографии
•   Самая сложная постановка задачи
Аттрибуты

                                 Мужчина

                                   Азиат

                                  Бородат

                                Улыбается


• Что мы можем сказать про этого человека?
• Атрибуты – «типичные» характеристики объекта
• Для человека - пол, возраст, раса, борода, усы,
  улыбка, очки и т.д.
FERET (1995-2000)




 •   14000 изображений, 1200 человек
 •   2 фронтальных фотографии с разным выражением лица (fa, fb)
 •   Иногда одна фотография другой камерой и освещением
 •   Несколько дупликатов (фотографий того же человека через 1-2 года
     после первой съёмки)



P. J. Phillips, H. Moon, P. J. Rauss, and S. Rizvi, "The FERET evaluation methodology
for face recognition algorithms", PAMI 2000.
FRGC




 •   Face Recognition Grand Challenge (для Face Recognition Vendor Test)
 •   Идея: исследовать возможность повышения качества распознавания за
     счёт улучшенных данных разной природы (контролируемые,
     неконтролируемые, 3д), высокое разрешение
 •   220 человек, 12К изображений в обучающих данных
 •   465 человек в валидационной выборке (год спустя)

P. Jonathon Phillips, Patrick J. Flynn, Todd Scruggs, Kevin Bowyer, Jin Chang, Kevin Hoffman,
Joe Marques, Jaesik Min, and William Worek. Overview of the Face Recognition Grand
Challenge. In CVPR, 2005.
Labeled Faces in the Wild (LFW)
                                          http://vis-www.cs.umass.edu/lfw




Gary B. Huang, Manu Ramesh, Tamara Berg, and Erik Learned-Miller.
Labeled Faces in the Wild: A Database for Studying Face Recognition in Unconstrained
Environments. University of Massachusetts, Amherst, Technical Report 07-49, 2007.
Labeled Faces in the Wild
•   5749 человек, 12К изображений, 1680
    человек по 2 и более фотографии, остальные
    – по одной
•   Фотографии разрешения 250*250, JPEG
•   Неконтролируемые условия, очень разные
    фоны, позы, разное время съёмки
PubFig

                              Публичные люди:
                              • Политики
                              • «Звезды»

                              Большая коллекция
                              • 60,000 изображений
                              • 200 человек
                              • 300 изображений на человека

                              Поднаборы:
                              • Поза
                              • Освещение
                              • Выражение лица



    http://www.cs.columbia.edu/CAVE/databases/pubfig/
Верификация

Изображения   Признаки   Верификация

                RGB
                HOG
                LBP
                SIFT
                 …
                          Разные
                RGB
                HOG
                LBP
                SIFT
                 …
Нормализация изображения лица




• Обычно лицо нормализуется по центрам глаз
• Центры глаз должны быть на одной строке и с
  фиксированным расстоянием
EigenFaces




M. Turk and A. Pentland (1991). "Face recognition using
eigenfaces". Proc. IEEE Conference on Computer Vision and
Pattern Recognition. pp. 586–591.
EigenFaces




Большая собственная выборка изображений лиц
EigenFaces
         PCA:   x  x  Pb
EigenFaces
Local Binary Patterns




Ahonen, T., Hadid, A. and Pietikäinen, M. (2006), Face Description with Local Binary
Patterns: Application to Face Recognition. IEEE PAMI 28(12):2037-2041.
Применение LBP




•   Изображение разбивается на области. В каждой области
    применяются LBP операторы к каждому пикселю. Строится
    гистограмма.
•   Объединение гистограмм – LBP дескриптор для изображения.
•   Для пары изображений считается разность дескрипторов по
    какой-нибудь метрике (например, Хи-квадрат)
Развитие LBP
   •   Придумали два новых признаковых дескриптора: Three-Patch
       LBP и Four-Patch LBP - усовершенствованные LBP.
   •   Будем сравнивать не пиксели, а фрагменты изображения между
       собой (попиксельно по L2 и т.д.)
   •   f(x) =1 если x>T, и 0, если наоборот
   •   Затем всё переводим




Lior Wolf, Tal Hassner and Yaniv Taigman, "Descriptor Based Methods in the Wild," Faces in
Real-Life Images workshop at the European Conference on Computer Vision (ECCV), 2008.
Four-Patch LBP




       Сравнение двух пар фрагментов
BIF
      •   Биологически-
          обусловленные
          признаки
      •   Фильтры Габора в 4х
          ориентациях и 16
          масштабах
      •   Соседние масштабы
          объединяются через
          max-оператор
      •   Затем разбивается на
          пересекающиеся блоки
          и для каждого считается
          стандартное отклонение


      •   Всего ~3700 параметров
Аттрибуты

                               Мужчина

                                Азиат

                               Бородат

                              Улыбается


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

Female   Eyeglasses   Middle-aged   Dark hair
Google: “smiling asian men with glasses” 7/08
ECCV 2008, FaceTracer: “smiling asian men with glasses”
SVM-подход
   •   Уменьшенные изображения
       до 12*21 пикселей
       (thumbnails)
   •   SVM-RBF классификатор
   •   300 опорных векторов
   •   FERET база
   •   Точность – 96.6%




B. Moghaddam and M.-H. Yang, “Learning gender with support faces,” TPAMI, vol.
24, no. 5, pp. 707–711, 2002
«Boosting Sex»




•     Применим “boosting” подход для классификации пола лиц
•     Опираемся на классификатор «позы лица», использующий
      сравнение интенсивности двух пикселей в изображении


    S. Baluja and H. Rowley, “Boosting sex identification performance,” IJCV, 2007
Результаты
• Обучали и тестировали на FERET
  • 10 сравнений – точность 80%
  • 20 cравнений – точность 90%
  • 1000 признаков – точность 96%


• Сравнение с SVM по скорости
  • В 25-50 раз быстрее
Аттрибуты для верификации




Neeraj Kumar, Alexander C. Berg, Peter N. Belhumeur, and Shree K. Nayar.
Attribute and Simile Classifiers for Face Verification. ICCV, 2009.
Nose Type                  Race

                            Age
      Gender                             Eye Wear

  Eyebrow Type
                      Hair Color        Lip Type
        Blurry
                                       Mustache
Eye Type               Lighting
            Smiling
                                   Indoor/Outdoor
Hair Type
Amazon Mechanical Turk




           500,000 меток= $5,000 + 1 месяц
 See also [Deng, et al., 2009] [Vijayanarasimhan & Grauman, 2009]
Attribute Labeling Task
Human Face Verification Task
Области лица
Виды особенностей

Pixel Value Type    Normalizations   Aggregation

       RGB              None            None
       HSV           Mean-Norm        Histogram
  Image Intensity    Energy-Norm      Statistics

 Edge Magnitude

 Edge Orientation
Построение классификатора
• Есть набор областей изображения
• Есть набор признаков
• Есть SVM + RBF

• Процедура
  • Обучим классификаторы на всех комбинациях (область,
    признак)
  • Выбираем наилучшую комбинацию (область, признак)
  • Выберем вторую наилучшую комбинацию, добавим в
    набор, обучим классификатор на наборе
  • Будем добавлять новые наилучшие комбинации в набор,
    пока не прекратиться рост качества (или до 6
    комбинаций)
«Similes» / «Подобия»




     Penelope
        Cruz

                                                 Angelina Jolie


«Подобия» - классификатор, похожа ли данная часть лица на
тестовом изображении и у другого конкретного человека
«Эталонные люди»




Эталонный человек R1   Эталонный человек R2
Обучение «подобий»




             Изображения Пенелопы Круз      (её глаз)




               Изображения других людей (их глаз)

60 человек, 8 регионов, 6 типов особенностей (без выбора), для
                 каждого обучаем классификатор
Алгоритм верификации
• Выходы всех
  классификаторов
  аттрибутов и similes
  объединяются в
  один
  вектор признаков.
• Этот вектор
  подается
  на вход новому
  SVM + RBF
  классификатору.
Learning-based (LE)

                                                      Посчитали частоты
                                                      появления кодов для
                                                      LBP и HOG, и
                                                      увидели, что коды
                                                      встречаются очень
                                                      неравномерно


                                                       Идея – обучить такие
                                                       коды, которые
                                                       встречались бы с
                                                       одинаковой частотой




Zhimin Cao, Qi Yin, Xiaoou Tang, and Jian Sun. Face Recognition with Learning-
based Descriptor. Computer Vision and Pattern Recognition (CVPR), 2010.
Cхема метода
Признаки фрагмента




• Для каждого пиксла фрагмента считаем свой
  вектор-признаков
• Для этого записываем интенсивности пикселов по
  одному из указанных шаблонов (Выбрали №2)
• Эти вектора-признаков будет затем квантовать
Построение дескриптора




• Квантуем вектора-признаки с помощью
  рандомизированных проекций, чтобы частоты появления
  каждого кластера были одинаковы
  • Этого можно добиться рандомизированными проекциям
• Фрагменты изображения разбиваем на ячейки 5*7
  пикселов
• В каждом блоке считаем гистограммы частот и
  объединяем их
• Применяем PCA для сжатия дескрипторов
Результаты работы
Распознавание человеком


                      Original
                      99.20%



                      Cropped
                      97.53%


                      Inverse
                      Cropped
                      94.27%
Текущее состояние (весна 2011)
«Метод Тюбика»
    • Эксперименты показали, что можно обучить
      классификатор SVM так, чтобы его результаты
      хорошо кореллировали с оценками людей (по
      шкале от 1 до 7 баллов)
    • Попробуем чуть-чуть поправить все пропорции
      лица так, чтобы оно казалось красивее




EISENTHAL, Y DROR, G., AND RUPPIN, E. 2006. Facial attractiveness:
              .,
Beauty and the machine. Neural Computation 18, 1, 119–142.

Tommer Leyvand, Daniel Cohen-Or, Gideon Dror and Dani Lischinski Data-Driven
Enhancement of Facial Attractiveness ACM SIGGRAPH 2008
Схема




•   Вычисление черт на основе ASM моделей
Улучшение лица
• Из изображения извлекаем вектор v,
  описывающий геометрию модели.
• Нужно найти v’, близкий к исходному, но с более
  высокой оценкой красоты
• Подходы:
   • K-NN
      – Ранжируем все изоражения в базе по
      – Затем усредняем k ближайших

      – Только выпуклые комбинации примеров из базы



   • SVR
      – Оптимизация оценки красоты
      – Проекция v через PCA (234 в 35)
      – Регуляризация вероятностью модели (как в Active Shape)
Зависимость от K в K-NN
Сравнение подходов
Результаты
Результаты
Результаты
Видео
Синтез анимации




  •   Идея – для текущего изображения лица найдём в базе
      изоражений / видео изображения с наиболее похожими
      выражениями




Ira Kemelmacher-Shlizerman, Aditya Sankar, Eli Shechtman, and Steven M. Seitz.
Being John Malkovich, ECCV 2010
Выделение черт лица




• Любые методы подойдут
• Морфируемые модели дадут наиболее точный
  результат
Канонические лица




• Лицо отображется на каноническую позу. Таким
  образом, мы убираем разницу в позе и можем
  сравнивать выражение лица напрямую
Расстояние между выражениями
                                •   Все изображение
                                    разбивается на блоки
                                •   В каждом блоке считаем
                                    LBP
                                •   Сравнивается область
                                    лица и область глаз



•   Расстояние между блоками:

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


  где L(d) – логистическая функция



  T отображается в 0.5, T+/- σ в 0.01 и 0.99


• Суммарное расстояние:



  • Учитывается сходство выражения между соседними
    кадрами
Примеры сопоставлений лиц
Видео
Резюме
• Все методы анализа лица опираются на
  выделение лиц и черт лица, а также на
  построение сеточных моделей лиц
• Текстурный признак LBP и его варианты сейчас
  один из самых часто применяемых для
  распознавания лиц
• Вычисление атрибутов и сравнение лиц с
  «примерами» - очень мощный инструмент, и
  сейчас активно исследуется
План

• Выделение контрольных точек на лице и
  построение модели головы
• Анализ изображений лиц
• Построение анимированных 3D моделей
Моментальное 3Д




    • Построение высокодетализированной 3Д модели
      лица человека
    • От одной стереокамеры до нескольких
      стереокамер



T. Beeler, B. Bickel, P. Beardsley, R. Sumner, M. Gross High-Quality Single-Shot
Capture of Facial Geometry, SIGGRAPH 2010
Схема системы




• Иерархическое стереосопоставление с итеративным
  уточнением
  • От разрешения 160*160 до 1280*1280
  • Локальные методы - без использования глобальной
    оптимизации, сегментации и т.д.
Результат стерео




• Последовательное уточнение геометрии модели
• Субпиксельное уточнение диспаритета
Mesoscopic Augmentation




• Вычисляем высокочастотную составляющую
  изображения
• Высокие частоты соответствуют мелким деталям
  на коже человека
• «Искажаем» геометрию согласно специальной
  формуле
Результат
ЗД захват лица




    • Пассивная многокамерная система (14 камер)




D. Bradley, W. Heidrich, T. Popa, A. Sheffer High Resolution Passive Facial
Performance Capture , SIGGRAPH 2010
Устройство системы




•   7 стереопар высокого разрешения Sony HDR-
    SR7
•   Система подстветки на основе LED
•   Каждая стереопара видит свою зону на лице
Разрешение изображений




    • При таком высоком разрешении и равномерной
      подсветке поры на коже дают достаточно
      текстуры для вычисления пассивного стерео




BRADLEY, D., BOUBEKEUR, T., AND HEIDRICH, W. Accurate multi-view
reconstruction using robust binocular stereo and surface meshing. CVPR. 2008.
Пассивное стерео и обработка




• Каждая стереопара даёт карту глубины и облако
  точек (шумное)
• Итеративное сглаживание и вычисление порогов
  для отброса шумов
Результат по 1 кадру
Отслеживание




• Выбирают базовую модель и прослеживают её на
  протяжении всего видео
Текстурирование




• Участки текстуры копируются со своих камер
• Поскольку камеры без цветовой калибровки, при
  прямом копировании текстуры видны резкие
  цветовые переходы (артефакты)
• Для обработки используется композиция по
  Пуассону
Результат
Применение на практике




            L.A. Noire (2011)
Резюме
• В лабораторных условиях с помощью специальных
  установок можно получать детальные 3D модели лица
  в динамике (с эмоциями)
  • Модель в виде сетки, деформирующейся между кадрами

• Параметрические модели пока не позволяют
  моделировать весь спектр человеческих эмоций
  • Поэтому 3D сеточные модели анимируются именно как
    деформирующаяся сетка
  • Требуется ручная обработка для выделения отдельных
    элементов (глаза, губы и т.д.)


• Но 3D захват уже применяется в промышленности для
  разработки компьютерных игр

Contenu connexe

Tendances

CV2011-2. Lecture 05. Video segmentation.
CV2011-2. Lecture 05.  Video segmentation.CV2011-2. Lecture 05.  Video segmentation.
CV2011-2. Lecture 05. Video segmentation.Anton Konushin
 
CV2011-2. Lecture 06. Structure from motion.
CV2011-2. Lecture 06.  Structure from motion.CV2011-2. Lecture 06.  Structure from motion.
CV2011-2. Lecture 06. Structure from motion.Anton Konushin
 
CV2011-2. Lecture 04. Semantic image segmentation
CV2011-2. Lecture 04.  Semantic image segmentationCV2011-2. Lecture 04.  Semantic image segmentation
CV2011-2. Lecture 04. Semantic image segmentationAnton Konushin
 
CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.Anton Konushin
 
20120414 videorecognition konushin_lecture03
20120414 videorecognition konushin_lecture0320120414 videorecognition konushin_lecture03
20120414 videorecognition konushin_lecture03Computer Science Club
 
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture0420120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04Computer Science Club
 
CV2011 Lecture 6. Fitting
CV2011 Lecture 6. FittingCV2011 Lecture 6. Fitting
CV2011 Lecture 6. FittingAnton Konushin
 
CV2011 Lecture 5. Features
CV2011 Lecture 5. FeaturesCV2011 Lecture 5. Features
CV2011 Lecture 5. FeaturesAnton Konushin
 
Лекция 07 Обработка видео
Лекция 07 Обработка видеоЛекция 07 Обработка видео
Лекция 07 Обработка видеоVictor Kulikov
 
20100919 computer vision_konushin_lecture02
20100919 computer vision_konushin_lecture0220100919 computer vision_konushin_lecture02
20100919 computer vision_konushin_lecture02Computer Science Club
 
CV2011 Lecture 8. Detection
CV2011 Lecture 8. DetectionCV2011 Lecture 8. Detection
CV2011 Lecture 8. DetectionAnton Konushin
 

Tendances (12)

CV2011-2. Lecture 05. Video segmentation.
CV2011-2. Lecture 05.  Video segmentation.CV2011-2. Lecture 05.  Video segmentation.
CV2011-2. Lecture 05. Video segmentation.
 
CV2011-2. Lecture 06. Structure from motion.
CV2011-2. Lecture 06.  Structure from motion.CV2011-2. Lecture 06.  Structure from motion.
CV2011-2. Lecture 06. Structure from motion.
 
CV2011-2. Lecture 04. Semantic image segmentation
CV2011-2. Lecture 04.  Semantic image segmentationCV2011-2. Lecture 04.  Semantic image segmentation
CV2011-2. Lecture 04. Semantic image segmentation
 
CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.
 
20120414 videorecognition konushin_lecture03
20120414 videorecognition konushin_lecture0320120414 videorecognition konushin_lecture03
20120414 videorecognition konushin_lecture03
 
20120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture0420120414 videorecognition konushin_lecture04
20120414 videorecognition konushin_lecture04
 
CV2011 Lecture 6. Fitting
CV2011 Lecture 6. FittingCV2011 Lecture 6. Fitting
CV2011 Lecture 6. Fitting
 
CV2011 Lecture 5. Features
CV2011 Lecture 5. FeaturesCV2011 Lecture 5. Features
CV2011 Lecture 5. Features
 
Лекция 07 Обработка видео
Лекция 07 Обработка видеоЛекция 07 Обработка видео
Лекция 07 Обработка видео
 
20100919 computer vision_konushin_lecture02
20100919 computer vision_konushin_lecture0220100919 computer vision_konushin_lecture02
20100919 computer vision_konushin_lecture02
 
L05 features
L05 featuresL05 features
L05 features
 
CV2011 Lecture 8. Detection
CV2011 Lecture 8. DetectionCV2011 Lecture 8. Detection
CV2011 Lecture 8. Detection
 

En vedette

FaceDetection+GenderRecognition_review
FaceDetection+GenderRecognition_reviewFaceDetection+GenderRecognition_review
FaceDetection+GenderRecognition_reviewKhryashchev
 
JetPoint meeting @JetBrains on bioinformatics
JetPoint meeting @JetBrains on bioinformaticsJetPoint meeting @JetBrains on bioinformatics
JetPoint meeting @JetBrains on bioinformaticsolegshpynov
 
Supervised ML in Practice: Tips & Tricks
Supervised ML in Practice:  Tips & TricksSupervised ML in Practice:  Tips & Tricks
Supervised ML in Practice: Tips & TricksDzianis Pirshtuk
 
Локализация лиц с помощью детектора Виолы-Джонс
Локализация лиц с помощью детектора Виолы-ДжонсЛокализация лиц с помощью детектора Виолы-Джонс
Локализация лиц с помощью детектора Виолы-ДжонсArtyom Shklovets
 
L11: Метод ансамблей
L11: Метод ансамблейL11: Метод ансамблей
L11: Метод ансамблейTechnosphere1
 
Лекция №10 "Алгоритмические композиции. Завершение"
Лекция №10 "Алгоритмические композиции. Завершение" Лекция №10 "Алгоритмические композиции. Завершение"
Лекция №10 "Алгоритмические композиции. Завершение" Technosphere1
 
К.В. Воронцов "Линейные методы классификации"
К.В. Воронцов "Линейные методы классификации"К.В. Воронцов "Линейные методы классификации"
К.В. Воронцов "Линейные методы классификации"Yandex
 
GBM package in r
GBM package in rGBM package in r
GBM package in rmark_landry
 

En vedette (10)

FaceDetection+GenderRecognition_review
FaceDetection+GenderRecognition_reviewFaceDetection+GenderRecognition_review
FaceDetection+GenderRecognition_review
 
Реализация метода автоматического разрешения лексической многозначности
Реализация метода автоматического разрешения лексической многозначностиРеализация метода автоматического разрешения лексической многозначности
Реализация метода автоматического разрешения лексической многозначности
 
Marta_Egorova
Marta_EgorovaMarta_Egorova
Marta_Egorova
 
JetPoint meeting @JetBrains on bioinformatics
JetPoint meeting @JetBrains on bioinformaticsJetPoint meeting @JetBrains on bioinformatics
JetPoint meeting @JetBrains on bioinformatics
 
Supervised ML in Practice: Tips & Tricks
Supervised ML in Practice:  Tips & TricksSupervised ML in Practice:  Tips & Tricks
Supervised ML in Practice: Tips & Tricks
 
Локализация лиц с помощью детектора Виолы-Джонс
Локализация лиц с помощью детектора Виолы-ДжонсЛокализация лиц с помощью детектора Виолы-Джонс
Локализация лиц с помощью детектора Виолы-Джонс
 
L11: Метод ансамблей
L11: Метод ансамблейL11: Метод ансамблей
L11: Метод ансамблей
 
Лекция №10 "Алгоритмические композиции. Завершение"
Лекция №10 "Алгоритмические композиции. Завершение" Лекция №10 "Алгоритмические композиции. Завершение"
Лекция №10 "Алгоритмические композиции. Завершение"
 
К.В. Воронцов "Линейные методы классификации"
К.В. Воронцов "Линейные методы классификации"К.В. Воронцов "Линейные методы классификации"
К.В. Воронцов "Линейные методы классификации"
 
GBM package in r
GBM package in rGBM package in r
GBM package in r
 

Similaire à 20120415 videorecognition konushin_lecture05

CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.Anton Konushin
 
CV2015. Лекция 5. Выделение объектов.
CV2015. Лекция 5. Выделение объектов.CV2015. Лекция 5. Выделение объектов.
CV2015. Лекция 5. Выделение объектов.Anton Konushin
 
Геометрическое моделирование
Геометрическое моделированиеГеометрическое моделирование
Геометрическое моделированиеViktoria Vlasenko
 
Интерпретация моделей машинного обучения
Интерпретация моделей машинного обученияИнтерпретация моделей машинного обучения
Интерпретация моделей машинного обученияДмитрий Колодезев
 
Сегментация изображений в компьютерной графике.ppt
Сегментация  изображений в компьютерной графике.pptСегментация  изображений в компьютерной графике.ppt
Сегментация изображений в компьютерной графике.pptssuser413a98
 
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)Dmitry Kornev
 
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)Bitworks Software
 
25. урок информатики имитация металлических поверхностей в растровом графичес...
25. урок информатики имитация металлических поверхностей в растровом графичес...25. урок информатики имитация металлических поверхностей в растровом графичес...
25. урок информатики имитация металлических поверхностей в растровом графичес...Kirrrr123
 
виды графики
виды графикивиды графики
виды графикиelenash584
 
My lecture on topic of assignment problem (russian)
My lecture on topic of assignment problem (russian)My lecture on topic of assignment problem (russian)
My lecture on topic of assignment problem (russian)Sergey Shatov
 
Модульные сетки в реальном мире - IQLab Frontend Fusion 2012
Модульные сетки в реальном мире - IQLab Frontend Fusion 2012Модульные сетки в реальном мире - IQLab Frontend Fusion 2012
Модульные сетки в реальном мире - IQLab Frontend Fusion 2012Ecommerce Solution Provider SysIQ
 
Crowdsourcing с механической поддержкой
Crowdsourcing с механической поддержкойCrowdsourcing с механической поддержкой
Crowdsourcing с механической поддержкойssuser80b897
 
распознавание автомобильного номера в условиях зашумлённости»
распознавание автомобильного номера в условиях зашумлённости»распознавание автомобильного номера в условиях зашумлённости»
распознавание автомобильного номера в условиях зашумлённости»seik0ixtem
 
"Рекомендации по проектированию API" — Марина Степанова, Яндекс
"Рекомендации по проектированию API" — Марина Степанова, Яндекс"Рекомендации по проектированию API" — Марина Степанова, Яндекс
"Рекомендации по проектированию API" — Марина Степанова, ЯндексYandex
 
20120413 videorecognition konushin_lecture02
20120413 videorecognition konushin_lecture0220120413 videorecognition konushin_lecture02
20120413 videorecognition konushin_lecture02Computer Science Club
 

Similaire à 20120415 videorecognition konushin_lecture05 (20)

L06 detection
L06 detectionL06 detection
L06 detection
 
CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.
 
Лекция по Трёхмерной графике
Лекция по Трёхмерной графикеЛекция по Трёхмерной графике
Лекция по Трёхмерной графике
 
CV2015. Лекция 5. Выделение объектов.
CV2015. Лекция 5. Выделение объектов.CV2015. Лекция 5. Выделение объектов.
CV2015. Лекция 5. Выделение объектов.
 
3 d графика
3 d графика3 d графика
3 d графика
 
Геометрическое моделирование
Геометрическое моделированиеГеометрическое моделирование
Геометрическое моделирование
 
Интерпретация моделей машинного обучения
Интерпретация моделей машинного обученияИнтерпретация моделей машинного обучения
Интерпретация моделей машинного обучения
 
Сегментация изображений в компьютерной графике.ppt
Сегментация  изображений в компьютерной графике.pptСегментация  изображений в компьютерной графике.ppt
Сегментация изображений в компьютерной графике.ppt
 
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
 
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
 
25. урок информатики имитация металлических поверхностей в растровом графичес...
25. урок информатики имитация металлических поверхностей в растровом графичес...25. урок информатики имитация металлических поверхностей в растровом графичес...
25. урок информатики имитация металлических поверхностей в растровом графичес...
 
виды графики
виды графикивиды графики
виды графики
 
My lecture on topic of assignment problem (russian)
My lecture on topic of assignment problem (russian)My lecture on topic of assignment problem (russian)
My lecture on topic of assignment problem (russian)
 
Модульные сетки в реальном мире - IQLab Frontend Fusion 2012
Модульные сетки в реальном мире - IQLab Frontend Fusion 2012Модульные сетки в реальном мире - IQLab Frontend Fusion 2012
Модульные сетки в реальном мире - IQLab Frontend Fusion 2012
 
Crowdsourcing с механической поддержкой
Crowdsourcing с механической поддержкойCrowdsourcing с механической поддержкой
Crowdsourcing с механической поддержкой
 
распознавание автомобильного номера в условиях зашумлённости»
распознавание автомобильного номера в условиях зашумлённости»распознавание автомобильного номера в условиях зашумлённости»
распознавание автомобильного номера в условиях зашумлённости»
 
3D-графика. ЗИЛ
3D-графика. ЗИЛ3D-графика. ЗИЛ
3D-графика. ЗИЛ
 
Модульные сетки в реальном мире
Модульные сетки в реальном миреМодульные сетки в реальном мире
Модульные сетки в реальном мире
 
"Рекомендации по проектированию API" — Марина Степанова, Яндекс
"Рекомендации по проектированию API" — Марина Степанова, Яндекс"Рекомендации по проектированию API" — Марина Степанова, Яндекс
"Рекомендации по проектированию API" — Марина Степанова, Яндекс
 
20120413 videorecognition konushin_lecture02
20120413 videorecognition konushin_lecture0220120413 videorecognition konushin_lecture02
20120413 videorecognition konushin_lecture02
 

Plus de Computer Science Club

20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugsComputer Science Club
 
20140531 serebryany lecture02_find_scary_cpp_bugs
20140531 serebryany lecture02_find_scary_cpp_bugs20140531 serebryany lecture02_find_scary_cpp_bugs
20140531 serebryany lecture02_find_scary_cpp_bugsComputer Science Club
 
20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugsComputer Science Club
 
20140511 parallel programming_kalishenko_lecture12
20140511 parallel programming_kalishenko_lecture1220140511 parallel programming_kalishenko_lecture12
20140511 parallel programming_kalishenko_lecture12Computer Science Club
 
20140427 parallel programming_zlobin_lecture11
20140427 parallel programming_zlobin_lecture1120140427 parallel programming_zlobin_lecture11
20140427 parallel programming_zlobin_lecture11Computer Science Club
 
20140420 parallel programming_kalishenko_lecture10
20140420 parallel programming_kalishenko_lecture1020140420 parallel programming_kalishenko_lecture10
20140420 parallel programming_kalishenko_lecture10Computer Science Club
 
20140413 parallel programming_kalishenko_lecture09
20140413 parallel programming_kalishenko_lecture0920140413 parallel programming_kalishenko_lecture09
20140413 parallel programming_kalishenko_lecture09Computer Science Club
 
20140329 graph drawing_dainiak_lecture02
20140329 graph drawing_dainiak_lecture0220140329 graph drawing_dainiak_lecture02
20140329 graph drawing_dainiak_lecture02Computer Science Club
 
20140329 graph drawing_dainiak_lecture01
20140329 graph drawing_dainiak_lecture0120140329 graph drawing_dainiak_lecture01
20140329 graph drawing_dainiak_lecture01Computer Science Club
 
20140310 parallel programming_kalishenko_lecture03-04
20140310 parallel programming_kalishenko_lecture03-0420140310 parallel programming_kalishenko_lecture03-04
20140310 parallel programming_kalishenko_lecture03-04Computer Science Club
 
20140216 parallel programming_kalishenko_lecture01
20140216 parallel programming_kalishenko_lecture0120140216 parallel programming_kalishenko_lecture01
20140216 parallel programming_kalishenko_lecture01Computer Science Club
 

Plus de Computer Science Club (20)

20141223 kuznetsov distributed
20141223 kuznetsov distributed20141223 kuznetsov distributed
20141223 kuznetsov distributed
 
Computer Vision
Computer VisionComputer Vision
Computer Vision
 
20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs
 
20140531 serebryany lecture02_find_scary_cpp_bugs
20140531 serebryany lecture02_find_scary_cpp_bugs20140531 serebryany lecture02_find_scary_cpp_bugs
20140531 serebryany lecture02_find_scary_cpp_bugs
 
20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs
 
20140511 parallel programming_kalishenko_lecture12
20140511 parallel programming_kalishenko_lecture1220140511 parallel programming_kalishenko_lecture12
20140511 parallel programming_kalishenko_lecture12
 
20140427 parallel programming_zlobin_lecture11
20140427 parallel programming_zlobin_lecture1120140427 parallel programming_zlobin_lecture11
20140427 parallel programming_zlobin_lecture11
 
20140420 parallel programming_kalishenko_lecture10
20140420 parallel programming_kalishenko_lecture1020140420 parallel programming_kalishenko_lecture10
20140420 parallel programming_kalishenko_lecture10
 
20140413 parallel programming_kalishenko_lecture09
20140413 parallel programming_kalishenko_lecture0920140413 parallel programming_kalishenko_lecture09
20140413 parallel programming_kalishenko_lecture09
 
20140329 graph drawing_dainiak_lecture02
20140329 graph drawing_dainiak_lecture0220140329 graph drawing_dainiak_lecture02
20140329 graph drawing_dainiak_lecture02
 
20140329 graph drawing_dainiak_lecture01
20140329 graph drawing_dainiak_lecture0120140329 graph drawing_dainiak_lecture01
20140329 graph drawing_dainiak_lecture01
 
20140310 parallel programming_kalishenko_lecture03-04
20140310 parallel programming_kalishenko_lecture03-0420140310 parallel programming_kalishenko_lecture03-04
20140310 parallel programming_kalishenko_lecture03-04
 
20140223-SuffixTrees-lecture01-03
20140223-SuffixTrees-lecture01-0320140223-SuffixTrees-lecture01-03
20140223-SuffixTrees-lecture01-03
 
20140216 parallel programming_kalishenko_lecture01
20140216 parallel programming_kalishenko_lecture0120140216 parallel programming_kalishenko_lecture01
20140216 parallel programming_kalishenko_lecture01
 
20131106 h10 lecture6_matiyasevich
20131106 h10 lecture6_matiyasevich20131106 h10 lecture6_matiyasevich
20131106 h10 lecture6_matiyasevich
 
20131027 h10 lecture5_matiyasevich
20131027 h10 lecture5_matiyasevich20131027 h10 lecture5_matiyasevich
20131027 h10 lecture5_matiyasevich
 
20131027 h10 lecture5_matiyasevich
20131027 h10 lecture5_matiyasevich20131027 h10 lecture5_matiyasevich
20131027 h10 lecture5_matiyasevich
 
20131013 h10 lecture4_matiyasevich
20131013 h10 lecture4_matiyasevich20131013 h10 lecture4_matiyasevich
20131013 h10 lecture4_matiyasevich
 
20131006 h10 lecture3_matiyasevich
20131006 h10 lecture3_matiyasevich20131006 h10 lecture3_matiyasevich
20131006 h10 lecture3_matiyasevich
 
20131006 h10 lecture3_matiyasevich
20131006 h10 lecture3_matiyasevich20131006 h10 lecture3_matiyasevich
20131006 h10 lecture3_matiyasevich
 

20120415 videorecognition konushin_lecture05

  • 1. Анализ и распознавание лиц Антон Конушин Computer science club, Екатеринбург 13-15 апреля 2012 года
  • 2. План • Выделение контрольных точек на лице и построение модели головы • Анализ изображений лиц • Построение анимированных 3D моделей
  • 3. Контрольные точки • Для анализа изображений лиц нам нужно выделять контрольные (антропометрические) точки на лице • Если точки есть, то мы можем «нормализовать» изображение лица, преобразовав его к каноническому положению (глаза в определенных точках изображения и т.д.)
  • 4. Контрольные точки • Обычные алгоритмы выделения объектов (HOG + SVM, Haar + Boosting) не справляются с задачей • Слишком простая структура области, недостаточно информации для надежного выделения
  • 5. Геометрические ограничения • На помощь приходит следующее наблюдение • Между расположением антропометрических точек на лице есть зависимости • Нужно как-то смоделировать эти зависимости • Желательно, чтобы количество параметров, которые описывают зависимости, было поменьше, чем число точек x 2
  • 6. Модель формы • Набор размеченных изображений • Метки задают положение характерны точек • Построим статистическую модель T.F. Cootes, C.J. Taylor, D.H. Cooper and J. Graham, Training Models of Shape from Sets of Examples. in Proc. British Machine Vision Conference. Springer- Verlag, 1992, pp.9-18
  • 7. Выравнивание изображений • «Прокрустов» анализ – совместим все размеченные изображения насколько можно • Процедура • Совмещаем все экземпляры с первым • Повторяем до сходимости – Вычисление средней формы – Нормализация средней формы » Либо совмещением её с первым экземпляром » Либо к какому-либо фиксированному нормальному варианту
  • 8. Статистическая модель Можем теперь вычислить статистическую модель положения каждой контрольной точке на лице человека Но нам этого недостаточно, мы хотим извлечь зависимости между положениями точек (и поменьше параметров) Идея: пусть все координаты всех точек составляют один вектор из некоторого распределения. Попробуем его смоделировать и применим к нему какой-нибудь метод понижения размерности
  • 9. Метод главных компонент • Задача - аппроксимация данных векторами меньшей размерности • Изначально прямыми и плоскостями (Пирсон, 1901) • Пусть наш вектор – элемент из многомерного нормального распределения • Перейдём к новому базису • Базисные вектора – собственные вектора матрицы ковариации • Можем взять только первых K координат в новом базисе
  • 10. Построение модели формы • Даны выровненные объекты {x i } • Применяем МГК (PCA): x  x  Pb • P – Первые t собственных векторов • b – Параметры модели формы T b  P (x  x ) • Допустимые пределы варьирования параметров: |bi|  3 λi • Можем использовать эту модель для синтеза произвольных лиц
  • 11. Пример Варьируем b1 Варьируем b2 Варьируем b3
  • 12. Пример: Структуры мозга С этим подходом много экспериментировали в обработке медицинских изображений
  • 13. Активная Модель Формы • Получили модель формы • Как использовать ее для анализа изображений, т.е. для нахождения характерных точек? • “Active Shape Model” - итеративный метод сопоставления модели изображению • Модель формы позволяет проверить возможность текущей конфигурации точек и исправить ошибки • Модель формы также позволит уточнить положение контрольных точек D. Cristinacce and T.F. Cootes, "Facial Feature Detection using ADABOOST with Shape Constraints", Proc.BMVC2003, Vol.1,pp.231-240
  • 14. Детектор контрольных точек • Обучим с помощью бустинга детектор контрольных точек • Откалибруем выход для ранжирования откликов по правдоподобию • Возьмём по N самых надежных откликов каждого детектора
  • 15. Схема алгоритма • Идея: будем перебирать варианты положения черт лица, для каждого варианта проверяя соответствие модели формы • Схема: 1. Отсортируем отклики детекторов точек по качеству 2. Пусть i=1 3. Возьмём i самых сильных отликов для каждой точки 4. Составим список всех гипотез 5. Проверим все гипотезы 6. Если все гипотезы не удовлетворяют модели формы, тогда i=i+1 и возврат на шаг 3 7. Выберем из подходящих гипотез ту, у которой суммарный отклик черт наибольший
  • 16. Учет ограничений модели • Жесткие ограничения • Минимизируем | X  T ( x  Pb) |2 Dmax  3 • Мягкие ограничения • Минимизируем 1 2 2 | T ( X )  ( x  Pb) | / r  log( p(b)) • Можем добавить веса, учитывающие качество локального сопоставления
  • 17. Использование классификаторов • Заменим детектор на регрессию смещения • Регрессия оценивает вектор смещения истинного положения точки от измеренного • Можем использовать больше точек • Аналогично итерируем: • Поиск новых положений черт в окрестности текущих • Регуляризация с помощью модели формы David Cristinacce and Tim Cootes, Boosted Regression Active Shape Models, BMVC 2007
  • 19. Модели внешности • «Appearance models» • Статистическая модель, кодирующая совместно форму и текстуру • Мотивация • Использование всего изображения объекта T.F.Cootes, G.J. Edwards and C.J.Taylor. "Active Appearance Models", in Proc. European Conference on Computer Vision 1998 (H.Burkhardt & B. Neumann Ed.s). Vol. 2, pp. 484- 498, Springer, 1998.
  • 20. Построение • Строим вектор формы по каждому примеру Форма x = (x1,y1, … , xn, yn)T • Строим модель x  x  Ps b s
  • 21. Построение • Строим вектор текстуры Форма x = (x1,y1, … , xn, yn)T Текстура, g Трансформируем (warping) текстуру к усредненной форме
  • 22. Построение модели • Строим вектор текстуры для каждого примера Текстура, g • Нормализуем вектора • PCA g  g  Pg b g
  • 23. Общая модель • Изменения формы и текстуры обычно коррелируют • При улыбке, изменяются тени (текстура) и форма • Нужно моделировать одновременно • Для каждого примера оцениваем b s , b g  Wb s  • Строим общий вектор, bc     bg     Qs  • PCA b c  Qc     Q c  g x  x  WPs Qs c g  g  Pg Q g c
  • 24. Модель внешности лица  2 1 b1 2 1  2 2 b2 2 2
  • 25. Пример поиска лица Для совместных моделей можно сделать итеративный алгоритм, апроксимирующий градиентный спуск
  • 27. 3D модели лица • В обычных условиях лицо снимается с разных точек зрения • 2D модель не всегда может корректно учесть всё множество допустимых трансформаций • Единственный выход – учитывать 3D искажения за счёт использование 3D модели Вход Выход • Задача построение 3D модели по одному/нескольким изображениям
  • 28. Постановка задачи Вход Выход • Изображение с лицом • Трёхмерная • Примерное полигональная модель положение лица лица • Должна хорошо приближать входное изображение • Параметры положения камеры относительно модели
  • 29. Трёхмерная модель • Трёхмерная «метамодель», генерирующая полигональные модели 200 сканов Cyberware ™
  • 31. Подгонка модели к изображению • Минимизировать невязку • Iinput – входное изображение • Imodel – изображение (рендеринг) модели • Ω - область лица на входном изображении • Инициализируем параметры модели • Варьируем параметры, визуализируем модель, сравниваем с изображением и ищем оптимальную комбинацию параметров
  • 33. Редактирование фотографий • Задача: • Перенести выражение лица человека с одной фотографии на другую. • Идея: • Построим 3D модели лица для обоих изображений и рассчитаем с их помощью преобразование изображений Fei Yang et.al. Expression Flow for 3D-Aware Face Component Transfer, ACM Transactions on Graphics (Proc. SIGGRAPH), 2011
  • 36. Примеры Резульат 2D фотомонтаж без 3D уточнения
  • 38. Резюме • Отдельные черты лица найти невозможно, нужно искать их в совокупности с помощью модели лица/головы • 2D модели не учитывают многих факторов, но работают для хороших ракурсов/изображений • 3D модели потенциально очень мощные, но оценивать их сейчас тяжело, особенно в сложных условиях (неравномерное освещение и т.д.)
  • 39. План • Выделение контрольных точек на лице и построение модели головы • Анализ изображений лиц • Построение анимированных 3D моделей
  • 40. Верификация На обоих изображениях один и тот же человек, или нет? Базовая задача распознавания лиц, которую и человеку проще всего решать
  • 41. Идентификация • Есть фиксированный список людей (база) и тестовое изображении • Нужно определить, кто из списка изображени на тестовой фотографии?
  • 42. «Watch List» • Есть список «подозрительных людей» • Необходимо определить, входит ли человек в этот список по его фотографии • Самая сложная постановка задачи
  • 43. Аттрибуты Мужчина Азиат Бородат Улыбается • Что мы можем сказать про этого человека? • Атрибуты – «типичные» характеристики объекта • Для человека - пол, возраст, раса, борода, усы, улыбка, очки и т.д.
  • 44. FERET (1995-2000) • 14000 изображений, 1200 человек • 2 фронтальных фотографии с разным выражением лица (fa, fb) • Иногда одна фотография другой камерой и освещением • Несколько дупликатов (фотографий того же человека через 1-2 года после первой съёмки) P. J. Phillips, H. Moon, P. J. Rauss, and S. Rizvi, "The FERET evaluation methodology for face recognition algorithms", PAMI 2000.
  • 45. FRGC • Face Recognition Grand Challenge (для Face Recognition Vendor Test) • Идея: исследовать возможность повышения качества распознавания за счёт улучшенных данных разной природы (контролируемые, неконтролируемые, 3д), высокое разрешение • 220 человек, 12К изображений в обучающих данных • 465 человек в валидационной выборке (год спустя) P. Jonathon Phillips, Patrick J. Flynn, Todd Scruggs, Kevin Bowyer, Jin Chang, Kevin Hoffman, Joe Marques, Jaesik Min, and William Worek. Overview of the Face Recognition Grand Challenge. In CVPR, 2005.
  • 46. Labeled Faces in the Wild (LFW) http://vis-www.cs.umass.edu/lfw Gary B. Huang, Manu Ramesh, Tamara Berg, and Erik Learned-Miller. Labeled Faces in the Wild: A Database for Studying Face Recognition in Unconstrained Environments. University of Massachusetts, Amherst, Technical Report 07-49, 2007.
  • 47. Labeled Faces in the Wild • 5749 человек, 12К изображений, 1680 человек по 2 и более фотографии, остальные – по одной • Фотографии разрешения 250*250, JPEG • Неконтролируемые условия, очень разные фоны, позы, разное время съёмки
  • 48. PubFig Публичные люди: • Политики • «Звезды» Большая коллекция • 60,000 изображений • 200 человек • 300 изображений на человека Поднаборы: • Поза • Освещение • Выражение лица http://www.cs.columbia.edu/CAVE/databases/pubfig/
  • 49. Верификация Изображения Признаки Верификация RGB HOG LBP SIFT … Разные RGB HOG LBP SIFT …
  • 50. Нормализация изображения лица • Обычно лицо нормализуется по центрам глаз • Центры глаз должны быть на одной строке и с фиксированным расстоянием
  • 51. EigenFaces M. Turk and A. Pentland (1991). "Face recognition using eigenfaces". Proc. IEEE Conference on Computer Vision and Pattern Recognition. pp. 586–591.
  • 53. EigenFaces PCA: x  x  Pb
  • 55. Local Binary Patterns Ahonen, T., Hadid, A. and Pietikäinen, M. (2006), Face Description with Local Binary Patterns: Application to Face Recognition. IEEE PAMI 28(12):2037-2041.
  • 56. Применение LBP • Изображение разбивается на области. В каждой области применяются LBP операторы к каждому пикселю. Строится гистограмма. • Объединение гистограмм – LBP дескриптор для изображения. • Для пары изображений считается разность дескрипторов по какой-нибудь метрике (например, Хи-квадрат)
  • 57. Развитие LBP • Придумали два новых признаковых дескриптора: Three-Patch LBP и Four-Patch LBP - усовершенствованные LBP. • Будем сравнивать не пиксели, а фрагменты изображения между собой (попиксельно по L2 и т.д.) • f(x) =1 если x>T, и 0, если наоборот • Затем всё переводим Lior Wolf, Tal Hassner and Yaniv Taigman, "Descriptor Based Methods in the Wild," Faces in Real-Life Images workshop at the European Conference on Computer Vision (ECCV), 2008.
  • 58. Four-Patch LBP Сравнение двух пар фрагментов
  • 59. BIF • Биологически- обусловленные признаки • Фильтры Габора в 4х ориентациях и 16 масштабах • Соседние масштабы объединяются через max-оператор • Затем разбивается на пересекающиеся блоки и для каждого считается стандартное отклонение • Всего ~3700 параметров
  • 60. Аттрибуты Мужчина Азиат Бородат Улыбается • Самый сложный атрибут – возраст, ключевая проблема – данные
  • 62. Google: “smiling asian men with glasses” 7/08
  • 63. ECCV 2008, FaceTracer: “smiling asian men with glasses”
  • 64. SVM-подход • Уменьшенные изображения до 12*21 пикселей (thumbnails) • SVM-RBF классификатор • 300 опорных векторов • FERET база • Точность – 96.6% B. Moghaddam and M.-H. Yang, “Learning gender with support faces,” TPAMI, vol. 24, no. 5, pp. 707–711, 2002
  • 65. «Boosting Sex» • Применим “boosting” подход для классификации пола лиц • Опираемся на классификатор «позы лица», использующий сравнение интенсивности двух пикселей в изображении S. Baluja and H. Rowley, “Boosting sex identification performance,” IJCV, 2007
  • 66. Результаты • Обучали и тестировали на FERET • 10 сравнений – точность 80% • 20 cравнений – точность 90% • 1000 признаков – точность 96% • Сравнение с SVM по скорости • В 25-50 раз быстрее
  • 67. Аттрибуты для верификации Neeraj Kumar, Alexander C. Berg, Peter N. Belhumeur, and Shree K. Nayar. Attribute and Simile Classifiers for Face Verification. ICCV, 2009.
  • 68. Nose Type Race Age Gender Eye Wear Eyebrow Type Hair Color Lip Type Blurry Mustache Eye Type Lighting Smiling Indoor/Outdoor Hair Type
  • 69. Amazon Mechanical Turk 500,000 меток= $5,000 + 1 месяц See also [Deng, et al., 2009] [Vijayanarasimhan & Grauman, 2009]
  • 73. Виды особенностей Pixel Value Type Normalizations Aggregation RGB None None HSV Mean-Norm Histogram Image Intensity Energy-Norm Statistics Edge Magnitude Edge Orientation
  • 74. Построение классификатора • Есть набор областей изображения • Есть набор признаков • Есть SVM + RBF • Процедура • Обучим классификаторы на всех комбинациях (область, признак) • Выбираем наилучшую комбинацию (область, признак) • Выберем вторую наилучшую комбинацию, добавим в набор, обучим классификатор на наборе • Будем добавлять новые наилучшие комбинации в набор, пока не прекратиться рост качества (или до 6 комбинаций)
  • 75. «Similes» / «Подобия» Penelope Cruz Angelina Jolie «Подобия» - классификатор, похожа ли данная часть лица на тестовом изображении и у другого конкретного человека
  • 76. «Эталонные люди» Эталонный человек R1 Эталонный человек R2
  • 77. Обучение «подобий» Изображения Пенелопы Круз (её глаз) Изображения других людей (их глаз) 60 человек, 8 регионов, 6 типов особенностей (без выбора), для каждого обучаем классификатор
  • 78. Алгоритм верификации • Выходы всех классификаторов аттрибутов и similes объединяются в один вектор признаков. • Этот вектор подается на вход новому SVM + RBF классификатору.
  • 79. Learning-based (LE) Посчитали частоты появления кодов для LBP и HOG, и увидели, что коды встречаются очень неравномерно Идея – обучить такие коды, которые встречались бы с одинаковой частотой Zhimin Cao, Qi Yin, Xiaoou Tang, and Jian Sun. Face Recognition with Learning- based Descriptor. Computer Vision and Pattern Recognition (CVPR), 2010.
  • 81. Признаки фрагмента • Для каждого пиксла фрагмента считаем свой вектор-признаков • Для этого записываем интенсивности пикселов по одному из указанных шаблонов (Выбрали №2) • Эти вектора-признаков будет затем квантовать
  • 82. Построение дескриптора • Квантуем вектора-признаки с помощью рандомизированных проекций, чтобы частоты появления каждого кластера были одинаковы • Этого можно добиться рандомизированными проекциям • Фрагменты изображения разбиваем на ячейки 5*7 пикселов • В каждом блоке считаем гистограммы частот и объединяем их • Применяем PCA для сжатия дескрипторов
  • 84. Распознавание человеком Original 99.20% Cropped 97.53% Inverse Cropped 94.27%
  • 86. «Метод Тюбика» • Эксперименты показали, что можно обучить классификатор SVM так, чтобы его результаты хорошо кореллировали с оценками людей (по шкале от 1 до 7 баллов) • Попробуем чуть-чуть поправить все пропорции лица так, чтобы оно казалось красивее EISENTHAL, Y DROR, G., AND RUPPIN, E. 2006. Facial attractiveness: ., Beauty and the machine. Neural Computation 18, 1, 119–142. Tommer Leyvand, Daniel Cohen-Or, Gideon Dror and Dani Lischinski Data-Driven Enhancement of Facial Attractiveness ACM SIGGRAPH 2008
  • 87. Схема • Вычисление черт на основе ASM моделей
  • 88. Улучшение лица • Из изображения извлекаем вектор v, описывающий геометрию модели. • Нужно найти v’, близкий к исходному, но с более высокой оценкой красоты • Подходы: • K-NN – Ранжируем все изоражения в базе по – Затем усредняем k ближайших – Только выпуклые комбинации примеров из базы • SVR – Оптимизация оценки красоты – Проекция v через PCA (234 в 35) – Регуляризация вероятностью модели (как в Active Shape)
  • 95. Синтез анимации • Идея – для текущего изображения лица найдём в базе изоражений / видео изображения с наиболее похожими выражениями Ira Kemelmacher-Shlizerman, Aditya Sankar, Eli Shechtman, and Steven M. Seitz. Being John Malkovich, ECCV 2010
  • 96. Выделение черт лица • Любые методы подойдут • Морфируемые модели дадут наиболее точный результат
  • 97. Канонические лица • Лицо отображется на каноническую позу. Таким образом, мы убираем разницу в позе и можем сравнивать выражение лица напрямую
  • 98. Расстояние между выражениями • Все изображение разбивается на блоки • В каждом блоке считаем LBP • Сравнивается область лица и область глаз • Расстояние между блоками: • Для каждой области суммируем расстояние между всеми блоками • Суммарное расстояние в выражении лиц – взвешенная сумма расстояний по области рта и области глаз:
  • 99. Расстояние между изображениями • Расстояние между позами: где L(d) – логистическая функция T отображается в 0.5, T+/- σ в 0.01 и 0.99 • Суммарное расстояние: • Учитывается сходство выражения между соседними кадрами
  • 102. Резюме • Все методы анализа лица опираются на выделение лиц и черт лица, а также на построение сеточных моделей лиц • Текстурный признак LBP и его варианты сейчас один из самых часто применяемых для распознавания лиц • Вычисление атрибутов и сравнение лиц с «примерами» - очень мощный инструмент, и сейчас активно исследуется
  • 103. План • Выделение контрольных точек на лице и построение модели головы • Анализ изображений лиц • Построение анимированных 3D моделей
  • 104. Моментальное 3Д • Построение высокодетализированной 3Д модели лица человека • От одной стереокамеры до нескольких стереокамер T. Beeler, B. Bickel, P. Beardsley, R. Sumner, M. Gross High-Quality Single-Shot Capture of Facial Geometry, SIGGRAPH 2010
  • 105. Схема системы • Иерархическое стереосопоставление с итеративным уточнением • От разрешения 160*160 до 1280*1280 • Локальные методы - без использования глобальной оптимизации, сегментации и т.д.
  • 106. Результат стерео • Последовательное уточнение геометрии модели • Субпиксельное уточнение диспаритета
  • 107. Mesoscopic Augmentation • Вычисляем высокочастотную составляющую изображения • Высокие частоты соответствуют мелким деталям на коже человека • «Искажаем» геометрию согласно специальной формуле
  • 109. ЗД захват лица • Пассивная многокамерная система (14 камер) D. Bradley, W. Heidrich, T. Popa, A. Sheffer High Resolution Passive Facial Performance Capture , SIGGRAPH 2010
  • 110. Устройство системы • 7 стереопар высокого разрешения Sony HDR- SR7 • Система подстветки на основе LED • Каждая стереопара видит свою зону на лице
  • 111. Разрешение изображений • При таком высоком разрешении и равномерной подсветке поры на коже дают достаточно текстуры для вычисления пассивного стерео BRADLEY, D., BOUBEKEUR, T., AND HEIDRICH, W. Accurate multi-view reconstruction using robust binocular stereo and surface meshing. CVPR. 2008.
  • 112. Пассивное стерео и обработка • Каждая стереопара даёт карту глубины и облако точек (шумное) • Итеративное сглаживание и вычисление порогов для отброса шумов
  • 114. Отслеживание • Выбирают базовую модель и прослеживают её на протяжении всего видео
  • 115. Текстурирование • Участки текстуры копируются со своих камер • Поскольку камеры без цветовой калибровки, при прямом копировании текстуры видны резкие цветовые переходы (артефакты) • Для обработки используется композиция по Пуассону
  • 118. Резюме • В лабораторных условиях с помощью специальных установок можно получать детальные 3D модели лица в динамике (с эмоциями) • Модель в виде сетки, деформирующейся между кадрами • Параметрические модели пока не позволяют моделировать весь спектр человеческих эмоций • Поэтому 3D сеточные модели анимируются именно как деформирующаяся сетка • Требуется ручная обработка для выделения отдельных элементов (глаза, губы и т.д.) • Но 3D захват уже применяется в промышленности для разработки компьютерных игр