SlideShare uma empresa Scribd logo
1 de 125
Бинокулярное плотное стерео




                 Антон Конушин
       http://courses.graphicon.ru/vision2
Этот курс подготовлен
при поддержке Microsoft
       Research
Благодарность


Презентация была подготовлена Глебом Кривовязем
для спецсеминара «Компьютерное зрение»

При подготовке были использованы материалы из курса
«Stereo Vision» от Michael Bleyer (Vienna University of
Technology):
http://www.ims.tuwien.ac.at/teaching_detail.php?ims_id=18
8.HQK
План

• Введение
• Формулировка задачи
• Трудности и предположения
• Локальные методы
• Глобальные методы
• Использование сегментации
• Резюме
Стереопсис
«Стереопсис (англ. stereopsis) - сенсорный процесс, возникающий
при бинокулярном зрении как психофизическая реакция на
сетчаточную горизонтальную диспаратность. В результате С.
субъект переживает специфическое ощущение глубины. <…> ».
(Психологическая энциклопедия)




       Левое изображение           Правое изображение
Имитация 3D
Так мы обычно смотрим на экран (2D):




                                       Рисунок: M. Bleyer
Имитация 3D
А так можно увидеть 3D-картинку:




                                   Рисунок: M. Bleyer
Имитация 3D. Пример
       3D-картинка появится посередине!




  Для правого глаза           Для левого глаза
Зрение человека




                  Слайд: M. Bleyer
«Зрение» компьютера




                      Слайд: M. Bleyer
План
• Введение
• Формулировка задачи
• Трудности и предположения
• Локальные методы
• Глобальные методы
• Использование сегментации
• Резюме
Смежные задачи

Внутренняя    Внешняя
                          3D-точки 2D-соответствия     Задача
калибровка   калибровка


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

                                                      Калибровка

                                                     PnP (внешняя
                                                      калибровка)

                                                     Триангуляция


                                                       Стерео
Смежные задачи

Внутренняя    Внешняя
                          3D-точки 2D-соответствия     Задача
калибровка   калибровка


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

                                                      Калибровка

                                                     PnP (внешняя
                                                      калибровка)

                                                     Триангуляция


                                                       Стерео
Смежные задачи

Внутренняя    Внешняя
                          3D-точки 2D-соответствия     Задача
калибровка   калибровка


                                                     Структура из
     Задача плотного стерео:                          движения

восстановить в 3D все видимые на
                           Калибровка

       изображениях точки PnP (внешняя
                           калибровка)

                                                     Триангуляция


                                                       Стерео
Виды стерео

• Binocular stereo (два изображения)


• Multi-view stereo (много изображений)


• Photometric stereo
Виды стерео
• Binocular stereo (два изображения)


• Multi-view stereo (много изображений)


• Photometric stereo
Общая схема

      Ректификация изображений




   Вычисление соответствующих точек




   Восстановление 3D путем триангуляции
Общая схема

      Ректификация изображений




   Вычисление соответствующих точек




   Восстановление 3D путем триангуляции
Ректификация




• «Ректификация» – преобразование стереопары в изображения, в
которых соответствующие эпиполярные линии лежат на одной и той же
горизонтальной строке
• Пример: проецирование на общую плоскость с помощью гомографии
Ректификация. Пример




Недостатки:
   • Не применим, когда камера движется вперёд или назад
   • Сильные искажения в некоторых случаях
Радиальная развёртка

• Polar rectification
• Индексируем эпиполярные линии углом поворота
  относительно эпиполи
• Копируем соответствующие пары эпиполярных
  линии последовательно в соответствующие
  горизонтали ректифицированных изображений

• Работает в тех случаях, когда ошибается метод
  проецирования на общую плоскость
Пример


         Проецирование




         Полярная
           ректификация
Пример
Общая схема

      Ректификация изображений




   Вычисление соответствующих точек




   Восстановление 3D путем триангуляции
Триангуляция




xl , xr - смещения относительно принципиальной точки

                                                       Слайд: M. Bleyer
Триангуляция



   Подобные
 треугольники:
     X       xl
         
     Z       f




                  Слайд: M. Bleyer
Триангуляция



   Подобные
 треугольники:
   X B       xr
          
     Z        f




                   Слайд: M. Bleyer
Триангуляция
Из подобия треугольников:
   X xl         X  B xr
                    
   Z f            Z    f

Исключаем X и выражаем Z:
       B f     B f
   Z                     , где   d  xl  xr   - диспаритет
      xl  xr    d

Итоговые координаты 3D-точки:

  X  Zxl         Zyl         B f
                Y          Z
         f           f           d
  xl , xr - смещения относительно принципиальной                точки
Общая схема

          Ректификация изображений




        Вычисление карты диспаритета




      Восстановление 3D путем триангуляции



Вычисление соответствующих точек сводится к задаче
             вычисления диспаритета
Общая схема

       Ректификация изображений

Ректификацию и триангуляцию можно считать
       чисто техническими задачами.
      Вычисление карты диспаритета
Основной интерес представляет вычисление
            карты диспаритета

    Восстановление 3D путем триангуляции
Вычисление карты диспаритета




       Какой диспаритет
   соответствует этой точке?
Вычисление карты диспаритета
Параллакс




•   Параллакс - видимое смещение объекта в зависимости от точки
    обзора
•   Фактически, диспаритет
•   Чем объект ближе – тем диспаритет больше
Сравнение алгоритмов
Ресурс Middlebury: http://vision.middlebury.edu/stereo/
   • Стандартные тестовые наборы
   • Рейтинг алгоритмов
План
• Введение
• Формулировка задачи
• Трудности и предположения
• Локальные методы
• Глобальные методы
• Использование сегментации
• Резюме
Основные трудности

Цветовые несоответствия

• Шум
• Различная освещенность
• Зеркальные отражения
• …
Основные трудности
«Плохо» текстурированные области




1 – Однородная область
2 – Текстура неизменна в горизонтальном направлении
3 – Повторяющаяся текстура
Основные трудности
«Плохо» текстурированные области




                 Отсутствие текстуры
                  порождает ошибки


                                       Пример: M. Bleyer
Основные трудности
 Перекрытия


Некоторые пиксели одного
изображения могут быть не
видны (перекрыты) на другом.

«Невидимые» области
называют областями
перекрытия




                               Рисунок: M. Bleyer
Основные трудности
Перекрытия




 Пример областей перекрытия (выделены красным)




                                          Рисунок: M. Bleyer
Основные предположения
Эпиполярное ограничение:
«Соответствующие точки лежат на одной строке»




Самое надежное и обоснованное из всех предположений!
Основные предположения
Соответствие цветов:
«Цвета соответствующих точек совпадают»




Может нарушаться (шум камеры, изменение
освещенности, погрешности сэмплирования и т.д.)
Основные предположения
Только лишь эпиполярного ограничения и предположения
о соответствии цветов недостаточно, т.к. задача остается
некорректно поставленной:

•    Решение может не существовать (перекрытия)
•    Решение может быть не уникально (однородные
     области)
•    Небольшие изменения входных данных существенно
     влияют на результат (шум)

Нужны дополнительные предположения!
Основные предположения

Гладкость:
«Искомая карта диспаритета является кусочно-гладкой»




      Гладкие области       Разрывы на краях объектов



                                                Рисунок: M. Bleyer
Основные предположения

Гладкость:
«Искомая карта диспаритета является кусочно-гладкой»


 • Нарушается при наличии в сцене большого числа
   тонких объектов (ветки деревьев, волосы и т.п.)
Основные предположения
Уникальность:
«Каждая точка одного изображения имеет не более
одного соответствия на другом»

 • Нарушается при наличии в сцене прозрачных объектов
   и горизонтально наклоненных плоскостей
Основные предположения
Уникальность:
«Каждая точка одного изображения имеет не более
одного соответствия на другом»




     Прозрачный объект      Горизонтально наклоненная
                                    плоскость


                                               Рисунки: M. Bleyer
Основные предположения
Сохранение порядка точек:
«Порядок относительного расположения точек
сохраняется и для их соответствий»

 • Нарушается при наличии в сцене тонких объектов
   переднего плана
 • Данное предположение можно считать «устаревшим»
Основные предположения
Сохранение порядка точек:
«Порядок относительного расположения точек
сохраняется и для их соответствий»




             Пример нарушения предположения


                                              Рисунок: M. Bleyer
Основные предположения
Предположение о сегментации:
«Области разрыва диспаритета совпадают с краями на
изображении»




Границы цветовых сегментов   Границы диспаритета



                                              Рисунки: M. Bleyer
Основные предположения
Предположение о сегментации:
«Области разрыва диспаритета совпадают с краями на
изображении»

 • Лежит в основе алгоритмов, использующих
   пересегментацию, - лидеров рейтинга Middlebury
 • Может нарушаться (ничто не гарантирует, что граница
   объекта не попадет внутрь цветового сегмента)
План
• Введение
• Формулировка задачи
• Трудности и предположения
• Локальные методы
• Глобальные методы
• Использование сегментации
• Резюме
Локальные методы
• Локальные, т.к. диспаритет в каждой точке зависит
  только от ее локальной окрестности


• Используют стратегию WTA (Winner-Take-All), т.е. в
  каждой точке «побеждает» соответствие с наименьшей
  «стоимостью»
Наивный алгоритм
• Стоимость соответствия – разность интенсивностей
  пикселей
• Результат – слишком много шума




            Пример работы наивного алгоритма



                                               Пример: M. Bleyer
Наивный алгоритм
• Стоимость соответствия – разность интенсивностей
  пикселей
• Результат – слишком много шума
         Проблема: Слишком велика
         неоднозначность сопоставления

        Решение: Учитывать окрестность



            Пример работы наивного алгоритма
                                               Пример: M. Bleyer
Учет окрестности
• Стоимость соответствия – SAD, SSD, NCC по окну
  вокруг пикселя

              dp  arg min      c (q , q  d )
                   0 d  d max qWp
  где:
  dp       – искомый диспаритет в пикселе p,
  c(p,q)   – функция стоимости,
  Wp       – окно вокруг пикселя p,
  dmax     – максимально возможный диспаритет


• Возможна очень эффективная реализация
   • Метод «скользящего окна»
Проблема выбора размера окна
• Маленькие окна – недостаточно текстуры
• Большие окна – эффект «раздувания» объектов
  переднего плана (foreground fattening) при однотонных
  фонах




               Эффект «foreground fattening»


                                                Рисунок: M. Bleyer
Проблема выбора размера окна
• Маленькие окна – недостаточно текстуры
• Большие окна – эффект «раздувания» объектов
  переднего плана (foreground fattening)




 Ground truth        Окно 3x3          Окно 21x21




                                           Примеры: M. Bleyer
Проблема на границах объектов
• Сопоставление окон неявным образом реализует
  предположение о гладкости
  •   Все пиксели внутри окна полагаются имеющими одинаковый
      диспаритет, что, вообще говоря, неверно



• Выход – исключить границы из рассмотрения с
  помощью адаптивных окон
  •   Окна с адаптивной структурой
  •   Окна с адаптивными весами
Окна с адаптивной структурой

 Пробуются 9 окон, по-разному
 расположенных относительно
 рассматриваемого пикселя

 Выбирается окно, дающее
 наименьшую стоимость




A. Fusiello, V. Roberto, and E. Trucco. Efficient stereo with multiple windowing. CVPR,
1997.
Окна с адаптивной структурой

 Окно делится на 9
 подобластей

 При сопоставлении
 учитываются лишь стоимости
 по 5 «лучшим» подобластям




H. Hirschmeuller, P. Innocent, and J. Garibaldi. Real-time correlation-based stereo vision
with reduced border errors. IJCV, 2002.
Окна с адаптивными весами
• Каждая точка внутри окна берется с определенным
  весом, отражающим вероятность того, что ее
  диспаритет и искомый диспаритет рассматриваемого
  пикселя совпадают:



       dp  arg min      w( p , q )  c(q, q  d )
            0 d  d max qWp

• Главный вопрос – как вычислить вес w(p,q)?
Вычисление веса
• Эвристические подсказки
   • Цвет
   • Расстояние
   • Границы




     Цвет           Расстояние   Граница



                                      Рисунки: M. Bleyer
Адаптивные окна. Резюме
• Достоинство: гибкость

• Недостаток: скорость
   • Метод «скользящего окна» неприменим
   • Тем не менее, достаточно эффективны

• Развитие локальных методов на сегодняшний день
  идет именно в направлении адаптивных окон
Борьба с перекрытиями
• Распространенное средство – кросс-проверка (cross-
  validation, consistency check)
• Идея кросс-проверки:
  •   Возьмем поочередно каждое из изображений за базовое и
      проверим на согласованность две карты диспаритета

  •   Рассогласованные пиксели отнесем к области перекрытия
Кросс-проверка

                         Тест
                       пройден




 Карта диспаритета (левое   Карта диспаритета (правое
       изображение)               изображение)



                                                Рисунки: M. Bleyer
Кросс-проверка

                        Тест не
                       пройден




 Карта диспаритета (левое    Карта диспаритета (правое
       изображение)                изображение)



                                                 Рисунки: M. Bleyer
Кросс-проверка
• Кросс-проверка      реализует        предположение             об
  уникальности:


              pl    ql                     mr
        Диспаритет одного из двух пикселей слева будет
             обнулен в результате кросс-проверки


• В результате кросс-проверки все пиксели имеют либо
  ровно одно, либо ни одного соответствия




                                                         Рисунок: M. Bleyer
Борьба с перекрытиями




      Пиксели, не прошедшие кросс-проверку
                (выделены синим)




                                             Пример: M. Bleyer
Борьба с перекрытиями




    «Пустые» области необходимо
             заполнить


       Пиксели, не прошедшие кросс-проверку
                 (выделены синим)

                                              Пример: M. Bleyer
Заполнение областей перекрытия

Найдем     ближайшие  к     p
«значащие» пиксели слева    и
справа вдоль строки                            pr

Присвоим p наименьший из двух
диспаритетов, т.к. перекрытия
обычно располагаются в области   pl
фона:
                                           p


   d p  min( d p , d p )
                   l   r




                                      Рисунок: M. Bleyer
Заполнение областей перекрытия
После заполнения карту диспаритета можно сгладить,
например, медианным фильтром




      До сглаживания           После сглаживания



                                            Примеры: M. Bleyer
План
• Введение
• Формулировка задачи
• Трудности и предположения
• Локальные методы
• Глобальные методы
• Использование сегментации
• Резюме
Глобальные методы

• Глобальные, т.к. диспаритет в каждой точке
  вычисляется при помощи некоторой глобальной
  процедуры оптимизации, т.е. зависит не только от
  локальной окрестности


• Как правило, формулируются в терминах разметки
  графа и минимизации энергии
Глобальные методы

Необходимо найти разметку D,
минимизирующую функцию энергии
E(D).

Метки – значения диспаритета.

Граф – решетка, узлы – пиксели.



            E ( D )  Edata ( D )  Esmooth ( D)


                                                   Рисунок: M. Bleyer
Глобальные методы
Необходимо найти разметку D,
минимизирующую функцию
энергии E(D).
         Унарный потенциал реализует
Метки – значения диспаритета. соответствии
         предположение о
                       цветов
Граф – решетка, узлы – пиксели.

            E ( D )  Edata ( D )  Esmooth ( D)
Глобальные методы
Необходимо найти разметку D,
минимизирующую функцию
энергии E(D).
            Парный потенциал явным
Метки – значенияобразом реализует
                 диспаритета.
           предположение о гладкости
Граф – решетка, узлы – пиксели.

            E ( D )  Edata ( D )  Esmooth ( D)
Унарный потенциал

          E data ( D )   pI m ( p , p  d p )
где:
m(p,q) – мера цветового сходства между пикселем p
одного изображения и пикселем q другого

Например:
m ( p, q )  I p  I q
m ( p , q )  min( I p  I q , k )
Зачастую применяется метрика Birchfield-Tomasi,
устойчивая к погрешности сэмплирования
Метрика Birchfield-Tomasi
    Проблема: Непрерывный сигнал может быть
    сэмплирован по-разному. Цвета соответствующих
    пикселей могут не совпасть.




                                             Яркость
    Яркость




                         X-координаты                          X-координаты

                (Левое изображение)                     (Правое изображение)



S. Birchfield, C. Tomasi. A Pixel Dissimilarity Measure That Is Insensitive to Image
Sampling. PAMI, 1998.
                                                                              Рисунок: M. Bleyer
Метрика Birchfield-Tomasi
    Решение: Учитывать средние яркости между рассматриваемыми
    пикселями и их соседями:
     m( p, p' )  min(| p  p'|, | p   p'|, | p   p'|,| p  p' |, | p  p' |)
                       p
                  p-                                            p’   p’+
                            p+




                                                Яркость
    Яркость




                 q                                        p’-




                           X-координаты                                    X-координаты

                (Левое изображение)                              (Правое изображение)



S. Birchfield, C. Tomasi. A Pixel Dissimilarity Measure That Is Insensitive to Image
Sampling. PAMI, 1998.
                                                                                          Рисунок: M. Bleyer
Парный потенциал

        E smooth ( D )          p , q  N
                                                s ( dp, dp)
где:
N – система соседства (множество всех пар пикселей-
соседей),
s(dp,dq) – функция штрафа за нарушение гладкости

Например:
                                                      0 ,d p  d q
s ( dp, dq )  dp  dq  P   или      s ( dp, dq )  
                                                      P , dp  dq
Парный потенциал

        E smooth ( D )          p , q  N
                                                s ( dp, dp)
где:
N – система соседства (множество всех пар пикселей-
соседей),
s(dp,dq) – функция штрафа за нарушение гладкости

Например:       Линейная модель
                                                      0 ,d p  d q
s ( dp, dq )  dp  dq  P   или      s ( dp, dq )  
                                                      P , dp  dq
Парный потенциал

        E smooth ( D )          p , q  N
                                                s ( dp, dp)
где:
N – система соседства (множество всех пар пикселей-
соседей),
s(dp,dq) – функция штрафа за нарушение гладкости
                Модель Поттса
Например:
                                                      0 ,d p  d q
s ( dp, dq )  dp  dq  P   или      s ( dp, dq )  
                                                      P , dp  dq
Проблема сохранения границ
Предположим, необходимо восстановить диспаритет в
области границы между объектами, как показано на
рисунке


            Диспаритет




                         X-координаты




                                            Рисунок: M. Bleyer
Проблема сохранения границ
Случай линейной модели:                                        s ( dp, d q)  dp  dq  P
                  Вклад в энергию:                             Вклад в энергию:
                         9P                                           9P

                                              P
Диспаритет




                                                  Диспаритет
                                          P
                                      P
                                  P
                              P                                        9P
                          P
                      P
                  P
              P

                                  X-координаты                          X-координаты

                      (неверное решение)                          (верное решение)



                                                                                       Рисунки: M. Bleyer
Проблема сохранения границ
Случай линейной модели:                                 s ( dp, d q)  dp  dq  P
                  Вклад в энергию:                      Вклад в энергию:
                         9P                                    9P

                                       P
                    Линейная модель не поощряет
Диспаритет




                                           Диспаритет
                             P
                           P
                  резких разрывов диспаритета. Она
                         P
                       P                  9P
                    чересчур сглаживает решение
                     P
                      P
                  P
              P

                            X-координаты                         X-координаты


                          (неверное                       (верное решение)
                                                                                Рисунки: M. Bleyer
                          решение)
Проблема сохранения границ
Случай линейной модели:           s ( dp, d q)  dp  dq  P




  Пример результатов для линейной модели. Справа показан
                  увеличенный фрагмент




                                                     Примеры: M. Bleyer
Проблема сохранения границ
                                                                               0 ,d p  d q
Случай модели Поттса:                                          s ( dp, dq )  
                                                                               P , dp  dq
                  Вклад в энергию:                                Вклад в энергию:
                         9P                                              P
                                              P
Диспаритет




                                                  Диспаритет
                                          P
                                      P
                                  P
                              P                                           P
                          P
                      P
                  P
              P
                                  X-координаты                             X-координаты

                      (неверное решение)                            (верное решение)


                                                                                          Рисунки: M. Bleyer
Проблема сохранения границ
                                      0 ,d p  d q
Случай модели Поттса: s ( dp, dq )  
                                      P , dp  dq
      Модель Поттса не препятствует
    Вклад в энергию:      Вклад в энергию:
           9P
      резким разрывам диспаритета.  P
                                            P
Диспаритет




                                                Диспаритет
                                        P
                                    P
                                Такие модели называют
                                P
                              P                        P
                      P
                          P    сохраняющими разрывы
              P
                  P             (discontinuity preserving)
                                X-координаты                         X-координаты

                              (неверное                      (верное решение)Рисунки: M. Bleyer
                              решение)
Проблема сохранения границ
                                                0 ,d p  d q
Случай модели Поттса:           s ( dp, dq )  
                                                P , dp  dq




   Пример результатов для модели Поттса. Справа показан
                  увеличенный фрагмент




                                                      Примеры: M. Bleyer
Другие модели

    •    Модифицированная
                                                              0, d p  d q
         модель Поттса:
                                                             
                                           s ( d p , d q )   P1 , d p  d q  1
                                                             P , d  d  1
                                                              2 p          q
    •    Усеченная линейная модель:
         s ( d p , d q )  min( d p  d q , k )  P
    •    Модель 2-го порядка [Woodford, 2008]:
         s ( d p , d q , d r )  min( d p  2 d q  d r , k )  P


O. Woodford, P. Torr, I. Reid, A. Fitzgibbon. Global stereo reconstruction under second
order smoothness priors. CVPR, 2008.
Минимизация энергии
    • Плотное стерео – задача многоклассовой разметки
    • Эффективное решение на графе общего вида
      существует лишь для выпуклых относительно |dp - dq|
      парных потенциалов [Ishikava, 2003]
    • Но необходимо использовать модели, сохраняющие
      границы, а они невыпуклы относительно |dp - dq|
    • Задача становится NP-полной
    • Необходимы приблизительные алгоритмы




H. Ishikawa. Exact Optimization for Markov Random Fields with Convex Priors. PAMI,
2003.
Используемые подходы
• Expansion Move, Swap Move
   •   Основаны на Graph Cuts
   •   Энергия должна быть субмодулярна
• Fusion Move
   •   Основан на QPBO
   •   Энергия произвольная
• Loopy Belief Propagation
   •   Энергия произвольная
   •   Сходимость не гарантируется
• TRW-S
   •   Энергия произвольная
Используемые подходы
• Expansion Move, Swap Move
   •   Основаны на Graph Cuts
   •   Энергия должна быть субмодулярна
• Fusion Move
   •   Основан на QPBO
   •   Энергия произвольная
• Loopy Belief Propagation
   •   Энергия произвольная
   •   Сходимость не гарантируется
• TRW-S
   •   Энергия произвольная
Алгоритм Fusion Move
 Два произвольных решения
 «смешиваются», энергия
 уменьшается

 α-расширение – частный                             Решение 1                    Решение 2
 случай алгоритма Fusion
 Move, при котором второе
 решение включает только
 метку α



                                                       Одна из возможных разметок после
                                                            смешения решений 1 и 2



V. Lempitsky, C. Rother, A. Blake. LogCut - Efficient Graph Cut Optimization for Markov
Random Fields. ICCV, 2007.
                                                                                  Рисунки: M. Bleyer
Fusion Move для стерео
• Возможность параллельных вычислений
  •   Одно ядро работает с диапазоном диспаритетов 0..8
  •   Другое ядро – с диапазоном 9..16
  •   Результаты смешиваются с помощью Fusion Move

• Возможность комбинировать сильные стороны разных
  алгоритмов
  •   Один алгоритм хорошо работает на границах объектов и плохо
      в однородных областях
  •   Другой – наоборот
  •   Результаты смешиваются

• Возможность оптимизации непрерывных параметров
Минимизация энергии
    • Плотное стерео – задача многоклассовой разметки
    • Эффективное решение на графе общего вида
      существует лишь для выпуклых относительно |dp - dq|
      парных потенциалов [Ishikava, 2003]
    • Но необходимо использовать модели, сохраняющие
      границы, а они невыпуклы относительно |dp - dq|
    • Задача становится NP-полной
    • Необходимы приблизительные алгоритмы




H. Ishikawa. Exact Optimization for Markov Random Fields with Convex Priors. PAMI,
2003.
Минимизация энергии
    • Плотное стерео – задача многоклассовой разметки
    • Эффективное решение на графе общего вида существует
      лишь для выпуклых относительно |dp - dq| парных
      потенциалов [Ishikava, 2003]
    • Но необходимо использовать модели, сохраняющие
            Альтернативный подход|d - d |
      границы, а они невыпуклы относительно p q
          заключается в уходе от графов
    •   Задача становится NP-полной
                       общего вида
    • Необходимы приблизительные алгоритмы

H. Ishikawa. Exact Optimization for Markov Random Fields with Convex Priors.
PAMI, 2003.
Переход к деревьям




• Отсутствие циклов позволяет использовать метод
  динамического программирования
  •   Глобальный минимум, произвольная энергия, высокая
      скорость работы



                                                      Рисунки: M. Bleyer
Переход к деревьям




           Главный вопрос – какие ребра
                    убирать?

• Отсутствие циклов позволяет использовать метод
  динамического программирования
   •   Глобальный минимум, произвольная энергия, высокая скорость
       работы
                                                            Рисунки: M. Bleyer
Алгоритм Scanline Optimization




• Удаляются все вертикальные ребра
• Так поступали в первых подобных алгоритмах



                                               Рисунки: M. Bleyer
Алгоритм Scanline Optimization




Очевидная проблема – рассогласованность строк между собой
(horizontal streaking)



                                                       Пример: M. Bleyer
Алгоритм на основе MST
  Идея – не форсировать гладкость между
  пикселями сильно разного цвета


  Каждому ребру (паре пикселей p и q)
  присваивается вес:

   w ( p , q ) | I ( p )  I ( q ) |
  Строится минимальное покрывающее дерево                       Рисунок: M. Bleyer
  (Minimum Spanning Tree, MST)




O. Veksler. Stereo Correspondence by Dynamic Programming on a Tree. CVPR, 2005.
Алгоритм на основе MST




Лучше, чем scanline optimization, но некоторая рассогласованность
остается
Алгоритм Semi-Global Matching
   В каждом пикселе строится свое
   дерево

   Оптимизация производится вдоль                                   p
   лучей, исходящих из пикселя

   Подход не совсем глобальный, но и
                                                                    Рисунок: M. Bleyer
   не локальный




H. Hirschmueller. Accurate and Efficient Stereo Processing by Semi-Global Matching
and Mutual Information. CVPR, 2005.
Алгоритм Semi-Global Matching




• Рассогласованности нет, но есть «изолированные» пиксели
• Алгоритм заточен под работу с аэрофотоснимками
Алгоритм Semi-Global Matching




                     Примеры: http://www.robotic.de/Heiko.Hirschmueller/
Алгоритм Simple Tree



                           p                            p




                                                        Рисунки: M. Bleyer


   В каждом пикселе строятся два дерева, совместно покрывающих все
   изображение. Алгоритм глобальный и лишен недостатка SGM.




M. Bleyer, M. Gelautz. Simple but Effective Tree Structures for Dynamic Programming-
based Stereo Matching. VISAPP, 2008.
Алгоритм Simple Tree




             Пример работы
Борьба с перекрытиями
• Модифицируем унарный потенциал:

  E data ( D )       p I
                              m( p , dp)



 Edata( D)   pI m( p, dp )(1  O( p ))  Pocc  O( p ) 
  где:
  O(p) – функция, возвращающая 1, если пиксель принадлежит
  области перекрытия, иначе 0
  Pocc – штраф за перекрытие
Борьба с перекрытиями
• Модифицируем унарный потенциал:

  E data ( D )       p I
                              m( p , dp)

             Как задать функцию O(p)?
  Edata( D)   pI m( p, dp )(1  O( p ))  Pocc  O( p ) 
  где:
  O(p) – функция, возвращающая 1, если пиксель принадлежит
  области перекрытия, иначе 0
  Pocc – штраф за перекрытие
Ограничение видимости
             Из двух пикселей p и q виден тот, который ближе к камере. Пиксель p
             на левом изображении принадлежит области перекрытия.


                 Левое изображение                           Правое изображение
Диспаритет




                                                 Диспритет
                                q                                q
                                          Warp
                       p                                         p

                           X-координаты                              X-координаты




                                                                                    Рисунки: M. Bleyer
Модифицированная энергия
• Унарный потенциал:

  Edata ( D )   pI m( p, dp )(1  O( p))  Pocc  O ( p) 


• Зададим O(p) при помощи ограничения видимости
  (visibility constraint):

          1, если q  I : p  dp  q  dq      и   dp  dq
  O( p)  
           0, иначе
Глобальные методы. Резюме
• Наилучшие по качеству методы на сегодняшний день
• Методы,      основанные    на    динамическом
  программировании, - отличный компромисс между
  качеством и скоростью
• Узкое место глобальных методов – функционалы
  энергии, а не алгоритмы оптимизации
План
• Введение
• Формулировка задачи
• Трудности и предположения
• Локальные методы
• Глобальные методы
• Использование сегментации
• Резюме
Использование сегментации




                            Рисунок: M. Bleyer
Использование сегментации
• Очень популярно в последние годы
• Методы с сегментацией дают наилучшие
  результаты на стандартных наборах данных
  •   Вероятно,    проблема   в   «переобучении»   на   наборах
      Middlebury
  •   Явное доминирование в верхней части рейтинга
Использование сегментации
• Используется    предположение    о   сегментации
  («области разрыва диспаритета совпадают с краями
  на изображении)
• Для его реализации применяют пересегментацию
  (т.е. сегменты достаточно мелкие, «с запасом»)




    Исходное         Результат      Границы объектов
  изображение       сегментации


                                           Примеры: M. Bleyer
Использование сегментации
• Используется предположение о сегментации («области
  разрыва диспаритета совпадают с краями на изображении)
• Для его реализации применяют пересегментацию (т.е.
  сегменты достаточно мелкие, «с из пиксельного
    Происходит переход запасом»)
пространства в пространство сегментов.
Гладкость внутри сегментов форсируется



    Исходное       Результат сегментации   Границы объектов
  изображение
                                                  Примеры: M. Bleyer
Базовый алгоритм с сегментацией
• Произвести сегментацию
  •   Mean-shift, EDISON и др.

• Инициализировать решение
  •   Любой локальный алгоритм на пикселях

• Аппроксимировать сегменты гладкими поверхностями
  •   Модель: плоскость, B-сплайн
  •   Средство: RANSAC, голосование и т.д.

• Уточнить разметку сегментов
  •   Iterated Conditional Modes (ICM), Cooperative Optimization и др.
Использование сегментации
• Преимущества
  •   Надежность в областях со слабой текстурой
  •   Снижение размерности задачи (оптимизация на уровне
      сегментов)

• Недостатки
  •   Нет защиты от нарушения предположения о сегментации
  •   Сложность выбора модели,       описывающей   изменение
      диспаритета внутри сегмента
  •   Проблему перекрытий все равно необходимо решать на
      пиксельном уровне
План
• Введение
• Формулировка задачи
• Трудности и предположения
• Локальные методы
• Глобальные методы
• Использование сегментации
• Резюме
Что не вошло
• Учет цвета в стерео
• Борьба с перепадами яркости
• Совмещение задач стерео и матирования
• Обучение парных потенциалов

• …
Выводы

• Многое уже сделано, но задача не решена
• Главный компромисс: скорость либо качество
• Требуется расширение тестовых выборок
• Явный тренд в сторону глобальных алгоритмов
На следующих лекциях

• Многовидовая реконструкция




• Реконструкция по 1 изображению

Mais conteúdo relacionado

Mais procurados

Subcutaneous emphysema as a complication of tooth extraction Subcutaneous e...
Subcutaneous emphysema as a complication of tooth extraction 	 Subcutaneous e...Subcutaneous emphysema as a complication of tooth extraction 	 Subcutaneous e...
Subcutaneous emphysema as a complication of tooth extraction Subcutaneous e...MedicineAndFamily
 
Taking History in oral surgery ( case sheet ) . pptx
Taking History in oral surgery ( case sheet ) . pptxTaking History in oral surgery ( case sheet ) . pptx
Taking History in oral surgery ( case sheet ) . pptxDr. Tabark Mohammed Ghadi
 
Substantivo aula proposta. 1
Substantivo aula proposta. 1Substantivo aula proposta. 1
Substantivo aula proposta. 1Amelia Barros
 
Clinical use of botulinum toxins in oral and maxillofacial surgery
Clinical use of botulinum toxins in oral and maxillofacial surgeryClinical use of botulinum toxins in oral and maxillofacial surgery
Clinical use of botulinum toxins in oral and maxillofacial surgeryDrKamini Dadsena
 
Journal Club on Autologous blood injection for the treatment of recurrent tmj...
Journal Club on Autologous blood injection for the treatment of recurrent tmj...Journal Club on Autologous blood injection for the treatment of recurrent tmj...
Journal Club on Autologous blood injection for the treatment of recurrent tmj...Dr Bhavik Miyani
 
Temporomandibular joint disorders I
Temporomandibular joint disorders ITemporomandibular joint disorders I
Temporomandibular joint disorders IIAU Dent
 
Surgical approaches to the facial skeleton
Surgical approaches to the facial skeletonSurgical approaches to the facial skeleton
Surgical approaches to the facial skeletonAbhishek Roy
 
Classification of Mandible, Midface, ZMC and NOE Fractures
Classification of Mandible, Midface, ZMC and NOE FracturesClassification of Mandible, Midface, ZMC and NOE Fractures
Classification of Mandible, Midface, ZMC and NOE FracturesArjun Shenoy
 
Costochondral graft in maxillofacial surgery
Costochondral graft in maxillofacial surgeryCostochondral graft in maxillofacial surgery
Costochondral graft in maxillofacial surgeryJamil Kifayatullah
 
Nerve injuries during impaction surgeries
Nerve injuries during impaction surgeriesNerve injuries during impaction surgeries
Nerve injuries during impaction surgeriesSelva Arockiam
 
Arthrocentesis of Temporomandibular Joint
Arthrocentesis of Temporomandibular JointArthrocentesis of Temporomandibular Joint
Arthrocentesis of Temporomandibular JointDrKamini Dadsena
 
Fascial Space infection
Fascial Space infection Fascial Space infection
Fascial Space infection Dr Yash Chaddha
 

Mais procurados (20)

Mandible # brief
Mandible # brief Mandible # brief
Mandible # brief
 
Subcutaneous emphysema as a complication of tooth extraction Subcutaneous e...
Subcutaneous emphysema as a complication of tooth extraction 	 Subcutaneous e...Subcutaneous emphysema as a complication of tooth extraction 	 Subcutaneous e...
Subcutaneous emphysema as a complication of tooth extraction Subcutaneous e...
 
Space-infection ih
Space-infection  ihSpace-infection  ih
Space-infection ih
 
Taking History in oral surgery ( case sheet ) . pptx
Taking History in oral surgery ( case sheet ) . pptxTaking History in oral surgery ( case sheet ) . pptx
Taking History in oral surgery ( case sheet ) . pptx
 
Hemifacial microsomia
Hemifacial microsomiaHemifacial microsomia
Hemifacial microsomia
 
Substantivo aula proposta. 1
Substantivo aula proposta. 1Substantivo aula proposta. 1
Substantivo aula proposta. 1
 
SPACE INFECTION.pptx
SPACE INFECTION.pptxSPACE INFECTION.pptx
SPACE INFECTION.pptx
 
Clinical use of botulinum toxins in oral and maxillofacial surgery
Clinical use of botulinum toxins in oral and maxillofacial surgeryClinical use of botulinum toxins in oral and maxillofacial surgery
Clinical use of botulinum toxins in oral and maxillofacial surgery
 
Lab section 2 O6U
Lab section 2 O6ULab section 2 O6U
Lab section 2 O6U
 
Journal Club on Autologous blood injection for the treatment of recurrent tmj...
Journal Club on Autologous blood injection for the treatment of recurrent tmj...Journal Club on Autologous blood injection for the treatment of recurrent tmj...
Journal Club on Autologous blood injection for the treatment of recurrent tmj...
 
Jc on condylar fracture
Jc on condylar fractureJc on condylar fracture
Jc on condylar fracture
 
Gorlin goltz syndrome
Gorlin goltz syndromeGorlin goltz syndrome
Gorlin goltz syndrome
 
Condylar hyperplasia(ch)
Condylar hyperplasia(ch)Condylar hyperplasia(ch)
Condylar hyperplasia(ch)
 
Temporomandibular joint disorders I
Temporomandibular joint disorders ITemporomandibular joint disorders I
Temporomandibular joint disorders I
 
Surgical approaches to the facial skeleton
Surgical approaches to the facial skeletonSurgical approaches to the facial skeleton
Surgical approaches to the facial skeleton
 
Classification of Mandible, Midface, ZMC and NOE Fractures
Classification of Mandible, Midface, ZMC and NOE FracturesClassification of Mandible, Midface, ZMC and NOE Fractures
Classification of Mandible, Midface, ZMC and NOE Fractures
 
Costochondral graft in maxillofacial surgery
Costochondral graft in maxillofacial surgeryCostochondral graft in maxillofacial surgery
Costochondral graft in maxillofacial surgery
 
Nerve injuries during impaction surgeries
Nerve injuries during impaction surgeriesNerve injuries during impaction surgeries
Nerve injuries during impaction surgeries
 
Arthrocentesis of Temporomandibular Joint
Arthrocentesis of Temporomandibular JointArthrocentesis of Temporomandibular Joint
Arthrocentesis of Temporomandibular Joint
 
Fascial Space infection
Fascial Space infection Fascial Space infection
Fascial Space infection
 

Destaque

CV2011-2. Lecture 12. Face models.
CV2011-2. Lecture 12.  Face models.CV2011-2. Lecture 12.  Face models.
CV2011-2. Lecture 12. Face models.Anton Konushin
 
CV2011-2. Lecture 09. Single view reconstructin.
CV2011-2. Lecture 09.  Single view reconstructin.CV2011-2. Lecture 09.  Single view reconstructin.
CV2011-2. Lecture 09. Single view reconstructin.Anton Konushin
 
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
 
Classifier evaluation and comparison
Classifier evaluation and comparisonClassifier evaluation and comparison
Classifier evaluation and comparisonAnton Konushin
 
CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.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
 
CV2015. Лекция 6. Нейросетевые алгоритмы.
CV2015. Лекция 6. Нейросетевые алгоритмы.CV2015. Лекция 6. Нейросетевые алгоритмы.
CV2015. Лекция 6. Нейросетевые алгоритмы.Anton Konushin
 
Andrew Zisserman Talk - Part 1a
Andrew Zisserman Talk - Part 1aAndrew Zisserman Talk - Part 1a
Andrew Zisserman Talk - Part 1aAnton Konushin
 
CV2011-2. Lecture 02. Photomontage and graphical models.
CV2011-2. Lecture 02.  Photomontage and graphical models.CV2011-2. Lecture 02.  Photomontage and graphical models.
CV2011-2. Lecture 02. Photomontage and graphical models.Anton Konushin
 
CV2011-2. Lecture 08. Multi-view stereo.
CV2011-2. Lecture 08. Multi-view stereo.CV2011-2. Lecture 08. Multi-view stereo.
CV2011-2. Lecture 08. Multi-view stereo.Anton Konushin
 
CV2011-2. Lecture 03. Photomontage, part 2.
CV2011-2. Lecture 03.  Photomontage, part 2.CV2011-2. Lecture 03.  Photomontage, part 2.
CV2011-2. Lecture 03. Photomontage, part 2.Anton Konushin
 
Computer vision infrastracture
Computer vision infrastractureComputer vision infrastracture
Computer vision infrastractureAnton Konushin
 
Anton Konushin - TEDxRU 2009
Anton Konushin - TEDxRU 2009Anton Konushin - TEDxRU 2009
Anton Konushin - TEDxRU 2009Anton Konushin
 
CV2011-2. Lecture 10. Pose estimation.
CV2011-2. Lecture 10.  Pose estimation.CV2011-2. Lecture 10.  Pose estimation.
CV2011-2. Lecture 10. Pose estimation.Anton Konushin
 
CV2011-2. Lecture 11. Face analysis.
CV2011-2. Lecture 11. Face analysis.CV2011-2. Lecture 11. Face analysis.
CV2011-2. Lecture 11. Face analysis.Anton Konushin
 
Writing a computer vision paper
Writing a computer vision paperWriting a computer vision paper
Writing a computer vision paperAnton Konushin
 
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.Anton Konushin
 
Статистическое сравнение классификаторов
Статистическое сравнение классификаторовСтатистическое сравнение классификаторов
Статистическое сравнение классификаторов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
 

Destaque (19)

CV2011-2. Lecture 12. Face models.
CV2011-2. Lecture 12.  Face models.CV2011-2. Lecture 12.  Face models.
CV2011-2. Lecture 12. Face models.
 
CV2011-2. Lecture 09. Single view reconstructin.
CV2011-2. Lecture 09.  Single view reconstructin.CV2011-2. Lecture 09.  Single view reconstructin.
CV2011-2. Lecture 09. Single view reconstructin.
 
CV2011-2. Lecture 05. Video segmentation.
CV2011-2. Lecture 05.  Video segmentation.CV2011-2. Lecture 05.  Video segmentation.
CV2011-2. Lecture 05. Video segmentation.
 
Classifier evaluation and comparison
Classifier evaluation and comparisonClassifier evaluation and comparison
Classifier evaluation and comparison
 
CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.
 
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.
 
CV2015. Лекция 6. Нейросетевые алгоритмы.
CV2015. Лекция 6. Нейросетевые алгоритмы.CV2015. Лекция 6. Нейросетевые алгоритмы.
CV2015. Лекция 6. Нейросетевые алгоритмы.
 
Andrew Zisserman Talk - Part 1a
Andrew Zisserman Talk - Part 1aAndrew Zisserman Talk - Part 1a
Andrew Zisserman Talk - Part 1a
 
CV2011-2. Lecture 02. Photomontage and graphical models.
CV2011-2. Lecture 02.  Photomontage and graphical models.CV2011-2. Lecture 02.  Photomontage and graphical models.
CV2011-2. Lecture 02. Photomontage and graphical models.
 
CV2011-2. Lecture 08. Multi-view stereo.
CV2011-2. Lecture 08. Multi-view stereo.CV2011-2. Lecture 08. Multi-view stereo.
CV2011-2. Lecture 08. Multi-view stereo.
 
CV2011-2. Lecture 03. Photomontage, part 2.
CV2011-2. Lecture 03.  Photomontage, part 2.CV2011-2. Lecture 03.  Photomontage, part 2.
CV2011-2. Lecture 03. Photomontage, part 2.
 
Computer vision infrastracture
Computer vision infrastractureComputer vision infrastracture
Computer vision infrastracture
 
Anton Konushin - TEDxRU 2009
Anton Konushin - TEDxRU 2009Anton Konushin - TEDxRU 2009
Anton Konushin - TEDxRU 2009
 
CV2011-2. Lecture 10. Pose estimation.
CV2011-2. Lecture 10.  Pose estimation.CV2011-2. Lecture 10.  Pose estimation.
CV2011-2. Lecture 10. Pose estimation.
 
CV2011-2. Lecture 11. Face analysis.
CV2011-2. Lecture 11. Face analysis.CV2011-2. Lecture 11. Face analysis.
CV2011-2. Lecture 11. Face analysis.
 
Writing a computer vision paper
Writing a computer vision paperWriting a computer vision paper
Writing a computer vision paper
 
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
 
Статистическое сравнение классификаторов
Статистическое сравнение классификаторовСтатистическое сравнение классификаторов
Статистическое сравнение классификаторов
 
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
 

Semelhante a CV2011-2. Lecture 07. Binocular stereo.

Сегментация изображений в компьютерной графике.ppt
Сегментация  изображений в компьютерной графике.pptСегментация  изображений в компьютерной графике.ppt
Сегментация изображений в компьютерной графике.pptssuser413a98
 
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
 
20120415 videorecognition konushin_lecture05
20120415 videorecognition konushin_lecture0520120415 videorecognition konushin_lecture05
20120415 videorecognition konushin_lecture05Computer Science Club
 
виды графики
виды графикивиды графики
виды графикиelenash584
 
20100919 computer vision_konushin_lecture02
20100919 computer vision_konushin_lecture0220100919 computer vision_konushin_lecture02
20100919 computer vision_konushin_lecture02Computer Science Club
 
CV2011-2. Lecture 01. Segmentation.
CV2011-2. Lecture 01. Segmentation.CV2011-2. Lecture 01. Segmentation.
CV2011-2. Lecture 01. Segmentation.Anton Konushin
 
Kirill Rozin - Computer Vision. Alchemy of Modeling
Kirill Rozin - Computer Vision. Alchemy of ModelingKirill Rozin - Computer Vision. Alchemy of Modeling
Kirill Rozin - Computer Vision. Alchemy of ModelingSergey Arkhipov
 
DUMP-2013 Наука и жизнь - Современная математика компьютерного зрения - Перев...
DUMP-2013 Наука и жизнь - Современная математика компьютерного зрения - Перев...DUMP-2013 Наука и жизнь - Современная математика компьютерного зрения - Перев...
DUMP-2013 Наука и жизнь - Современная математика компьютерного зрения - Перев...it-people
 
CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.Anton Konushin
 
20100502 computer vision_lempitsky_lectures01-02
20100502 computer vision_lempitsky_lectures01-0220100502 computer vision_lempitsky_lectures01-02
20100502 computer vision_lempitsky_lectures01-02Computer Science Club
 
20100502 computer vision_lempitsky_lectures01-02
20100502 computer vision_lempitsky_lectures01-0220100502 computer vision_lempitsky_lectures01-02
20100502 computer vision_lempitsky_lectures01-02Computer Science Club
 
презентация
презентацияпрезентация
презентацияlisondemon
 
Лекция 8 Основы 3D обработки
Лекция 8 Основы 3D обработкиЛекция 8 Основы 3D обработки
Лекция 8 Основы 3D обработкиVictor Kulikov
 
Современные проблемы в области фильтрации цифровых изображений
Современные проблемы в области фильтрации цифровых изображенийСовременные проблемы в области фильтрации цифровых изображений
Современные проблемы в области фильтрации цифровых изображенийVladimir Pavlov
 
CV2015. Лекция 5. Выделение объектов.
CV2015. Лекция 5. Выделение объектов.CV2015. Лекция 5. Выделение объектов.
CV2015. Лекция 5. Выделение объектов.Anton Konushin
 

Semelhante a CV2011-2. Lecture 07. Binocular stereo. (20)

Сегментация изображений в компьютерной графике.ppt
Сегментация  изображений в компьютерной графике.pptСегментация  изображений в компьютерной графике.ppt
Сегментация изображений в компьютерной графике.ppt
 
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
 
20120415 videorecognition konushin_lecture05
20120415 videorecognition konushin_lecture0520120415 videorecognition konushin_lecture05
20120415 videorecognition konushin_lecture05
 
виды графики
виды графикивиды графики
виды графики
 
20100919 computer vision_konushin_lecture02
20100919 computer vision_konushin_lecture0220100919 computer vision_konushin_lecture02
20100919 computer vision_konushin_lecture02
 
CV2011-2. Lecture 01. Segmentation.
CV2011-2. Lecture 01. Segmentation.CV2011-2. Lecture 01. Segmentation.
CV2011-2. Lecture 01. Segmentation.
 
Kirill Rozin - Computer Vision. Alchemy of Modeling
Kirill Rozin - Computer Vision. Alchemy of ModelingKirill Rozin - Computer Vision. Alchemy of Modeling
Kirill Rozin - Computer Vision. Alchemy of Modeling
 
DUMP-2013 Наука и жизнь - Современная математика компьютерного зрения - Перев...
DUMP-2013 Наука и жизнь - Современная математика компьютерного зрения - Перев...DUMP-2013 Наука и жизнь - Современная математика компьютерного зрения - Перев...
DUMP-2013 Наука и жизнь - Современная математика компьютерного зрения - Перев...
 
CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.
 
20100502 computer vision_lempitsky_lectures01-02
20100502 computer vision_lempitsky_lectures01-0220100502 computer vision_lempitsky_lectures01-02
20100502 computer vision_lempitsky_lectures01-02
 
20100502 computer vision_lempitsky_lectures01-02
20100502 computer vision_lempitsky_lectures01-0220100502 computer vision_lempitsky_lectures01-02
20100502 computer vision_lempitsky_lectures01-02
 
3 d графика
3 d графика3 d графика
3 d графика
 
Лекция по Трёхмерной графике
Лекция по Трёхмерной графикеЛекция по Трёхмерной графике
Лекция по Трёхмерной графике
 
L05 features
L05 featuresL05 features
L05 features
 
презентация
презентацияпрезентация
презентация
 
Лекция 8 Основы 3D обработки
Лекция 8 Основы 3D обработкиЛекция 8 Основы 3D обработки
Лекция 8 Основы 3D обработки
 
Современные проблемы в области фильтрации цифровых изображений
Современные проблемы в области фильтрации цифровых изображенийСовременные проблемы в области фильтрации цифровых изображений
Современные проблемы в области фильтрации цифровых изображений
 
L06 detection
L06 detectionL06 detection
L06 detection
 
CV2015. Лекция 5. Выделение объектов.
CV2015. Лекция 5. Выделение объектов.CV2015. Лекция 5. Выделение объектов.
CV2015. Лекция 5. Выделение объектов.
 

Mais de Anton Konushin

CV2015. Лекция 7. Поиск изображений по содержанию.
CV2015. Лекция 7. Поиск изображений по содержанию.CV2015. Лекция 7. Поиск изображений по содержанию.
CV2015. Лекция 7. Поиск изображений по содержанию.Anton Konushin
 
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.Anton Konushin
 
CV2015. Лекция 2. Основы обработки изображений.
CV2015. Лекция 2. Основы обработки изображений.CV2015. Лекция 2. Основы обработки изображений.
CV2015. Лекция 2. Основы обработки изображений.Anton Konushin
 
Технологии разработки ПО
Технологии разработки ПОТехнологии разработки ПО
Технологии разработки ПОAnton Konushin
 
CV2011 Lecture 13. Real-time vision
CV2011 Lecture 13. Real-time visionCV2011 Lecture 13. Real-time vision
CV2011 Lecture 13. Real-time visionAnton Konushin
 
CV2011 Lecture 12. Action recognition
CV2011 Lecture 12. Action recognitionCV2011 Lecture 12. Action recognition
CV2011 Lecture 12. Action recognitionAnton Konushin
 
CV2011 Lecture 11. Basic video
CV2011 Lecture 11. Basic videoCV2011 Lecture 11. Basic video
CV2011 Lecture 11. Basic videoAnton Konushin
 
CV2011 Lecture 10. Image retrieval
CV2011 Lecture 10.  Image retrievalCV2011 Lecture 10.  Image retrieval
CV2011 Lecture 10. Image retrievalAnton Konushin
 

Mais de Anton Konushin (8)

CV2015. Лекция 7. Поиск изображений по содержанию.
CV2015. Лекция 7. Поиск изображений по содержанию.CV2015. Лекция 7. Поиск изображений по содержанию.
CV2015. Лекция 7. Поиск изображений по содержанию.
 
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
 
CV2015. Лекция 2. Основы обработки изображений.
CV2015. Лекция 2. Основы обработки изображений.CV2015. Лекция 2. Основы обработки изображений.
CV2015. Лекция 2. Основы обработки изображений.
 
Технологии разработки ПО
Технологии разработки ПОТехнологии разработки ПО
Технологии разработки ПО
 
CV2011 Lecture 13. Real-time vision
CV2011 Lecture 13. Real-time visionCV2011 Lecture 13. Real-time vision
CV2011 Lecture 13. Real-time vision
 
CV2011 Lecture 12. Action recognition
CV2011 Lecture 12. Action recognitionCV2011 Lecture 12. Action recognition
CV2011 Lecture 12. Action recognition
 
CV2011 Lecture 11. Basic video
CV2011 Lecture 11. Basic videoCV2011 Lecture 11. Basic video
CV2011 Lecture 11. Basic video
 
CV2011 Lecture 10. Image retrieval
CV2011 Lecture 10.  Image retrievalCV2011 Lecture 10.  Image retrieval
CV2011 Lecture 10. Image retrieval
 

CV2011-2. Lecture 07. Binocular stereo.

  • 1. Бинокулярное плотное стерео Антон Конушин http://courses.graphicon.ru/vision2
  • 2. Этот курс подготовлен при поддержке Microsoft Research
  • 3. Благодарность Презентация была подготовлена Глебом Кривовязем для спецсеминара «Компьютерное зрение» При подготовке были использованы материалы из курса «Stereo Vision» от Michael Bleyer (Vienna University of Technology): http://www.ims.tuwien.ac.at/teaching_detail.php?ims_id=18 8.HQK
  • 4. План • Введение • Формулировка задачи • Трудности и предположения • Локальные методы • Глобальные методы • Использование сегментации • Резюме
  • 5. Стереопсис «Стереопсис (англ. stereopsis) - сенсорный процесс, возникающий при бинокулярном зрении как психофизическая реакция на сетчаточную горизонтальную диспаратность. В результате С. субъект переживает специфическое ощущение глубины. <…> ». (Психологическая энциклопедия) Левое изображение Правое изображение
  • 6. Имитация 3D Так мы обычно смотрим на экран (2D): Рисунок: M. Bleyer
  • 7. Имитация 3D А так можно увидеть 3D-картинку: Рисунок: M. Bleyer
  • 8. Имитация 3D. Пример 3D-картинка появится посередине! Для правого глаза Для левого глаза
  • 9. Зрение человека Слайд: M. Bleyer
  • 10. «Зрение» компьютера Слайд: M. Bleyer
  • 11. План • Введение • Формулировка задачи • Трудности и предположения • Локальные методы • Глобальные методы • Использование сегментации • Резюме
  • 12. Смежные задачи Внутренняя Внешняя 3D-точки 2D-соответствия Задача калибровка калибровка Структура из движения Калибровка PnP (внешняя калибровка) Триангуляция Стерео
  • 13. Смежные задачи Внутренняя Внешняя 3D-точки 2D-соответствия Задача калибровка калибровка Структура из движения Калибровка PnP (внешняя калибровка) Триангуляция Стерео
  • 14. Смежные задачи Внутренняя Внешняя 3D-точки 2D-соответствия Задача калибровка калибровка Структура из Задача плотного стерео: движения восстановить в 3D все видимые на Калибровка изображениях точки PnP (внешняя калибровка) Триангуляция Стерео
  • 15. Виды стерео • Binocular stereo (два изображения) • Multi-view stereo (много изображений) • Photometric stereo
  • 16. Виды стерео • Binocular stereo (два изображения) • Multi-view stereo (много изображений) • Photometric stereo
  • 17. Общая схема Ректификация изображений Вычисление соответствующих точек Восстановление 3D путем триангуляции
  • 18. Общая схема Ректификация изображений Вычисление соответствующих точек Восстановление 3D путем триангуляции
  • 19. Ректификация • «Ректификация» – преобразование стереопары в изображения, в которых соответствующие эпиполярные линии лежат на одной и той же горизонтальной строке • Пример: проецирование на общую плоскость с помощью гомографии
  • 20. Ректификация. Пример Недостатки: • Не применим, когда камера движется вперёд или назад • Сильные искажения в некоторых случаях
  • 21. Радиальная развёртка • Polar rectification • Индексируем эпиполярные линии углом поворота относительно эпиполи • Копируем соответствующие пары эпиполярных линии последовательно в соответствующие горизонтали ректифицированных изображений • Работает в тех случаях, когда ошибается метод проецирования на общую плоскость
  • 22. Пример Проецирование Полярная ректификация
  • 24. Общая схема Ректификация изображений Вычисление соответствующих точек Восстановление 3D путем триангуляции
  • 25. Триангуляция xl , xr - смещения относительно принципиальной точки Слайд: M. Bleyer
  • 26. Триангуляция Подобные треугольники: X xl  Z f Слайд: M. Bleyer
  • 27. Триангуляция Подобные треугольники: X B xr  Z f Слайд: M. Bleyer
  • 28. Триангуляция Из подобия треугольников: X xl X  B xr   Z f Z f Исключаем X и выражаем Z: B f B f Z  , где d  xl  xr - диспаритет xl  xr d Итоговые координаты 3D-точки: X  Zxl Zyl B f Y Z f f d xl , xr - смещения относительно принципиальной точки
  • 29. Общая схема Ректификация изображений Вычисление карты диспаритета Восстановление 3D путем триангуляции Вычисление соответствующих точек сводится к задаче вычисления диспаритета
  • 30. Общая схема Ректификация изображений Ректификацию и триангуляцию можно считать чисто техническими задачами. Вычисление карты диспаритета Основной интерес представляет вычисление карты диспаритета Восстановление 3D путем триангуляции
  • 31. Вычисление карты диспаритета Какой диспаритет соответствует этой точке?
  • 33. Параллакс • Параллакс - видимое смещение объекта в зависимости от точки обзора • Фактически, диспаритет • Чем объект ближе – тем диспаритет больше
  • 34. Сравнение алгоритмов Ресурс Middlebury: http://vision.middlebury.edu/stereo/ • Стандартные тестовые наборы • Рейтинг алгоритмов
  • 35. План • Введение • Формулировка задачи • Трудности и предположения • Локальные методы • Глобальные методы • Использование сегментации • Резюме
  • 36. Основные трудности Цветовые несоответствия • Шум • Различная освещенность • Зеркальные отражения • …
  • 37. Основные трудности «Плохо» текстурированные области 1 – Однородная область 2 – Текстура неизменна в горизонтальном направлении 3 – Повторяющаяся текстура
  • 38. Основные трудности «Плохо» текстурированные области Отсутствие текстуры порождает ошибки Пример: M. Bleyer
  • 39. Основные трудности Перекрытия Некоторые пиксели одного изображения могут быть не видны (перекрыты) на другом. «Невидимые» области называют областями перекрытия Рисунок: M. Bleyer
  • 40. Основные трудности Перекрытия Пример областей перекрытия (выделены красным) Рисунок: M. Bleyer
  • 41. Основные предположения Эпиполярное ограничение: «Соответствующие точки лежат на одной строке» Самое надежное и обоснованное из всех предположений!
  • 42. Основные предположения Соответствие цветов: «Цвета соответствующих точек совпадают» Может нарушаться (шум камеры, изменение освещенности, погрешности сэмплирования и т.д.)
  • 43. Основные предположения Только лишь эпиполярного ограничения и предположения о соответствии цветов недостаточно, т.к. задача остается некорректно поставленной: • Решение может не существовать (перекрытия) • Решение может быть не уникально (однородные области) • Небольшие изменения входных данных существенно влияют на результат (шум) Нужны дополнительные предположения!
  • 44. Основные предположения Гладкость: «Искомая карта диспаритета является кусочно-гладкой» Гладкие области Разрывы на краях объектов Рисунок: M. Bleyer
  • 45. Основные предположения Гладкость: «Искомая карта диспаритета является кусочно-гладкой» • Нарушается при наличии в сцене большого числа тонких объектов (ветки деревьев, волосы и т.п.)
  • 46. Основные предположения Уникальность: «Каждая точка одного изображения имеет не более одного соответствия на другом» • Нарушается при наличии в сцене прозрачных объектов и горизонтально наклоненных плоскостей
  • 47. Основные предположения Уникальность: «Каждая точка одного изображения имеет не более одного соответствия на другом» Прозрачный объект Горизонтально наклоненная плоскость Рисунки: M. Bleyer
  • 48. Основные предположения Сохранение порядка точек: «Порядок относительного расположения точек сохраняется и для их соответствий» • Нарушается при наличии в сцене тонких объектов переднего плана • Данное предположение можно считать «устаревшим»
  • 49. Основные предположения Сохранение порядка точек: «Порядок относительного расположения точек сохраняется и для их соответствий» Пример нарушения предположения Рисунок: M. Bleyer
  • 50. Основные предположения Предположение о сегментации: «Области разрыва диспаритета совпадают с краями на изображении» Границы цветовых сегментов Границы диспаритета Рисунки: M. Bleyer
  • 51. Основные предположения Предположение о сегментации: «Области разрыва диспаритета совпадают с краями на изображении» • Лежит в основе алгоритмов, использующих пересегментацию, - лидеров рейтинга Middlebury • Может нарушаться (ничто не гарантирует, что граница объекта не попадет внутрь цветового сегмента)
  • 52. План • Введение • Формулировка задачи • Трудности и предположения • Локальные методы • Глобальные методы • Использование сегментации • Резюме
  • 53. Локальные методы • Локальные, т.к. диспаритет в каждой точке зависит только от ее локальной окрестности • Используют стратегию WTA (Winner-Take-All), т.е. в каждой точке «побеждает» соответствие с наименьшей «стоимостью»
  • 54. Наивный алгоритм • Стоимость соответствия – разность интенсивностей пикселей • Результат – слишком много шума Пример работы наивного алгоритма Пример: M. Bleyer
  • 55. Наивный алгоритм • Стоимость соответствия – разность интенсивностей пикселей • Результат – слишком много шума Проблема: Слишком велика неоднозначность сопоставления Решение: Учитывать окрестность Пример работы наивного алгоритма Пример: M. Bleyer
  • 56. Учет окрестности • Стоимость соответствия – SAD, SSD, NCC по окну вокруг пикселя dp  arg min  c (q , q  d ) 0 d  d max qWp где: dp – искомый диспаритет в пикселе p, c(p,q) – функция стоимости, Wp – окно вокруг пикселя p, dmax – максимально возможный диспаритет • Возможна очень эффективная реализация • Метод «скользящего окна»
  • 57. Проблема выбора размера окна • Маленькие окна – недостаточно текстуры • Большие окна – эффект «раздувания» объектов переднего плана (foreground fattening) при однотонных фонах Эффект «foreground fattening» Рисунок: M. Bleyer
  • 58. Проблема выбора размера окна • Маленькие окна – недостаточно текстуры • Большие окна – эффект «раздувания» объектов переднего плана (foreground fattening) Ground truth Окно 3x3 Окно 21x21 Примеры: M. Bleyer
  • 59. Проблема на границах объектов • Сопоставление окон неявным образом реализует предположение о гладкости • Все пиксели внутри окна полагаются имеющими одинаковый диспаритет, что, вообще говоря, неверно • Выход – исключить границы из рассмотрения с помощью адаптивных окон • Окна с адаптивной структурой • Окна с адаптивными весами
  • 60. Окна с адаптивной структурой Пробуются 9 окон, по-разному расположенных относительно рассматриваемого пикселя Выбирается окно, дающее наименьшую стоимость A. Fusiello, V. Roberto, and E. Trucco. Efficient stereo with multiple windowing. CVPR, 1997.
  • 61. Окна с адаптивной структурой Окно делится на 9 подобластей При сопоставлении учитываются лишь стоимости по 5 «лучшим» подобластям H. Hirschmeuller, P. Innocent, and J. Garibaldi. Real-time correlation-based stereo vision with reduced border errors. IJCV, 2002.
  • 62. Окна с адаптивными весами • Каждая точка внутри окна берется с определенным весом, отражающим вероятность того, что ее диспаритет и искомый диспаритет рассматриваемого пикселя совпадают: dp  arg min  w( p , q )  c(q, q  d ) 0 d  d max qWp • Главный вопрос – как вычислить вес w(p,q)?
  • 63. Вычисление веса • Эвристические подсказки • Цвет • Расстояние • Границы Цвет Расстояние Граница Рисунки: M. Bleyer
  • 64. Адаптивные окна. Резюме • Достоинство: гибкость • Недостаток: скорость • Метод «скользящего окна» неприменим • Тем не менее, достаточно эффективны • Развитие локальных методов на сегодняшний день идет именно в направлении адаптивных окон
  • 65. Борьба с перекрытиями • Распространенное средство – кросс-проверка (cross- validation, consistency check) • Идея кросс-проверки: • Возьмем поочередно каждое из изображений за базовое и проверим на согласованность две карты диспаритета • Рассогласованные пиксели отнесем к области перекрытия
  • 66. Кросс-проверка Тест пройден Карта диспаритета (левое Карта диспаритета (правое изображение) изображение) Рисунки: M. Bleyer
  • 67. Кросс-проверка Тест не пройден Карта диспаритета (левое Карта диспаритета (правое изображение) изображение) Рисунки: M. Bleyer
  • 68. Кросс-проверка • Кросс-проверка реализует предположение об уникальности: pl ql mr Диспаритет одного из двух пикселей слева будет обнулен в результате кросс-проверки • В результате кросс-проверки все пиксели имеют либо ровно одно, либо ни одного соответствия Рисунок: M. Bleyer
  • 69. Борьба с перекрытиями Пиксели, не прошедшие кросс-проверку (выделены синим) Пример: M. Bleyer
  • 70. Борьба с перекрытиями «Пустые» области необходимо заполнить Пиксели, не прошедшие кросс-проверку (выделены синим) Пример: M. Bleyer
  • 71. Заполнение областей перекрытия Найдем ближайшие к p «значащие» пиксели слева и справа вдоль строки pr Присвоим p наименьший из двух диспаритетов, т.к. перекрытия обычно располагаются в области pl фона: p d p  min( d p , d p ) l r Рисунок: M. Bleyer
  • 72. Заполнение областей перекрытия После заполнения карту диспаритета можно сгладить, например, медианным фильтром До сглаживания После сглаживания Примеры: M. Bleyer
  • 73. План • Введение • Формулировка задачи • Трудности и предположения • Локальные методы • Глобальные методы • Использование сегментации • Резюме
  • 74. Глобальные методы • Глобальные, т.к. диспаритет в каждой точке вычисляется при помощи некоторой глобальной процедуры оптимизации, т.е. зависит не только от локальной окрестности • Как правило, формулируются в терминах разметки графа и минимизации энергии
  • 75. Глобальные методы Необходимо найти разметку D, минимизирующую функцию энергии E(D). Метки – значения диспаритета. Граф – решетка, узлы – пиксели. E ( D )  Edata ( D )  Esmooth ( D) Рисунок: M. Bleyer
  • 76. Глобальные методы Необходимо найти разметку D, минимизирующую функцию энергии E(D). Унарный потенциал реализует Метки – значения диспаритета. соответствии предположение о цветов Граф – решетка, узлы – пиксели. E ( D )  Edata ( D )  Esmooth ( D)
  • 77. Глобальные методы Необходимо найти разметку D, минимизирующую функцию энергии E(D). Парный потенциал явным Метки – значенияобразом реализует диспаритета. предположение о гладкости Граф – решетка, узлы – пиксели. E ( D )  Edata ( D )  Esmooth ( D)
  • 78. Унарный потенциал E data ( D )   pI m ( p , p  d p ) где: m(p,q) – мера цветового сходства между пикселем p одного изображения и пикселем q другого Например: m ( p, q )  I p  I q m ( p , q )  min( I p  I q , k ) Зачастую применяется метрика Birchfield-Tomasi, устойчивая к погрешности сэмплирования
  • 79. Метрика Birchfield-Tomasi Проблема: Непрерывный сигнал может быть сэмплирован по-разному. Цвета соответствующих пикселей могут не совпасть. Яркость Яркость X-координаты X-координаты (Левое изображение) (Правое изображение) S. Birchfield, C. Tomasi. A Pixel Dissimilarity Measure That Is Insensitive to Image Sampling. PAMI, 1998. Рисунок: M. Bleyer
  • 80. Метрика Birchfield-Tomasi Решение: Учитывать средние яркости между рассматриваемыми пикселями и их соседями: m( p, p' )  min(| p  p'|, | p   p'|, | p   p'|,| p  p' |, | p  p' |) p p- p’ p’+ p+ Яркость Яркость q p’- X-координаты X-координаты (Левое изображение) (Правое изображение) S. Birchfield, C. Tomasi. A Pixel Dissimilarity Measure That Is Insensitive to Image Sampling. PAMI, 1998. Рисунок: M. Bleyer
  • 81. Парный потенциал E smooth ( D )    p , q  N s ( dp, dp) где: N – система соседства (множество всех пар пикселей- соседей), s(dp,dq) – функция штрафа за нарушение гладкости Например:  0 ,d p  d q s ( dp, dq )  dp  dq  P или s ( dp, dq )    P , dp  dq
  • 82. Парный потенциал E smooth ( D )    p , q  N s ( dp, dp) где: N – система соседства (множество всех пар пикселей- соседей), s(dp,dq) – функция штрафа за нарушение гладкости Например: Линейная модель  0 ,d p  d q s ( dp, dq )  dp  dq  P или s ( dp, dq )    P , dp  dq
  • 83. Парный потенциал E smooth ( D )    p , q  N s ( dp, dp) где: N – система соседства (множество всех пар пикселей- соседей), s(dp,dq) – функция штрафа за нарушение гладкости Модель Поттса Например:  0 ,d p  d q s ( dp, dq )  dp  dq  P или s ( dp, dq )    P , dp  dq
  • 84. Проблема сохранения границ Предположим, необходимо восстановить диспаритет в области границы между объектами, как показано на рисунке Диспаритет X-координаты Рисунок: M. Bleyer
  • 85. Проблема сохранения границ Случай линейной модели: s ( dp, d q)  dp  dq  P Вклад в энергию: Вклад в энергию: 9P 9P P Диспаритет Диспаритет P P P P 9P P P P P X-координаты X-координаты (неверное решение) (верное решение) Рисунки: M. Bleyer
  • 86. Проблема сохранения границ Случай линейной модели: s ( dp, d q)  dp  dq  P Вклад в энергию: Вклад в энергию: 9P 9P P Линейная модель не поощряет Диспаритет Диспаритет P P резких разрывов диспаритета. Она P P 9P чересчур сглаживает решение P P P P X-координаты X-координаты (неверное (верное решение) Рисунки: M. Bleyer решение)
  • 87. Проблема сохранения границ Случай линейной модели: s ( dp, d q)  dp  dq  P Пример результатов для линейной модели. Справа показан увеличенный фрагмент Примеры: M. Bleyer
  • 88. Проблема сохранения границ  0 ,d p  d q Случай модели Поттса: s ( dp, dq )    P , dp  dq Вклад в энергию: Вклад в энергию: 9P P P Диспаритет Диспаритет P P P P P P P P P X-координаты X-координаты (неверное решение) (верное решение) Рисунки: M. Bleyer
  • 89. Проблема сохранения границ  0 ,d p  d q Случай модели Поттса: s ( dp, dq )    P , dp  dq Модель Поттса не препятствует Вклад в энергию: Вклад в энергию: 9P резким разрывам диспаритета. P P Диспаритет Диспаритет P P Такие модели называют P P P P P сохраняющими разрывы P P (discontinuity preserving) X-координаты X-координаты (неверное (верное решение)Рисунки: M. Bleyer решение)
  • 90. Проблема сохранения границ  0 ,d p  d q Случай модели Поттса: s ( dp, dq )    P , dp  dq Пример результатов для модели Поттса. Справа показан увеличенный фрагмент Примеры: M. Bleyer
  • 91. Другие модели • Модифицированная  0, d p  d q модель Поттса:  s ( d p , d q )   P1 , d p  d q  1 P , d  d  1  2 p q • Усеченная линейная модель: s ( d p , d q )  min( d p  d q , k )  P • Модель 2-го порядка [Woodford, 2008]: s ( d p , d q , d r )  min( d p  2 d q  d r , k )  P O. Woodford, P. Torr, I. Reid, A. Fitzgibbon. Global stereo reconstruction under second order smoothness priors. CVPR, 2008.
  • 92. Минимизация энергии • Плотное стерео – задача многоклассовой разметки • Эффективное решение на графе общего вида существует лишь для выпуклых относительно |dp - dq| парных потенциалов [Ishikava, 2003] • Но необходимо использовать модели, сохраняющие границы, а они невыпуклы относительно |dp - dq| • Задача становится NP-полной • Необходимы приблизительные алгоритмы H. Ishikawa. Exact Optimization for Markov Random Fields with Convex Priors. PAMI, 2003.
  • 93. Используемые подходы • Expansion Move, Swap Move • Основаны на Graph Cuts • Энергия должна быть субмодулярна • Fusion Move • Основан на QPBO • Энергия произвольная • Loopy Belief Propagation • Энергия произвольная • Сходимость не гарантируется • TRW-S • Энергия произвольная
  • 94. Используемые подходы • Expansion Move, Swap Move • Основаны на Graph Cuts • Энергия должна быть субмодулярна • Fusion Move • Основан на QPBO • Энергия произвольная • Loopy Belief Propagation • Энергия произвольная • Сходимость не гарантируется • TRW-S • Энергия произвольная
  • 95. Алгоритм Fusion Move Два произвольных решения «смешиваются», энергия уменьшается α-расширение – частный Решение 1 Решение 2 случай алгоритма Fusion Move, при котором второе решение включает только метку α Одна из возможных разметок после смешения решений 1 и 2 V. Lempitsky, C. Rother, A. Blake. LogCut - Efficient Graph Cut Optimization for Markov Random Fields. ICCV, 2007. Рисунки: M. Bleyer
  • 96. Fusion Move для стерео • Возможность параллельных вычислений • Одно ядро работает с диапазоном диспаритетов 0..8 • Другое ядро – с диапазоном 9..16 • Результаты смешиваются с помощью Fusion Move • Возможность комбинировать сильные стороны разных алгоритмов • Один алгоритм хорошо работает на границах объектов и плохо в однородных областях • Другой – наоборот • Результаты смешиваются • Возможность оптимизации непрерывных параметров
  • 97. Минимизация энергии • Плотное стерео – задача многоклассовой разметки • Эффективное решение на графе общего вида существует лишь для выпуклых относительно |dp - dq| парных потенциалов [Ishikava, 2003] • Но необходимо использовать модели, сохраняющие границы, а они невыпуклы относительно |dp - dq| • Задача становится NP-полной • Необходимы приблизительные алгоритмы H. Ishikawa. Exact Optimization for Markov Random Fields with Convex Priors. PAMI, 2003.
  • 98. Минимизация энергии • Плотное стерео – задача многоклассовой разметки • Эффективное решение на графе общего вида существует лишь для выпуклых относительно |dp - dq| парных потенциалов [Ishikava, 2003] • Но необходимо использовать модели, сохраняющие Альтернативный подход|d - d | границы, а они невыпуклы относительно p q заключается в уходе от графов • Задача становится NP-полной общего вида • Необходимы приблизительные алгоритмы H. Ishikawa. Exact Optimization for Markov Random Fields with Convex Priors. PAMI, 2003.
  • 99. Переход к деревьям • Отсутствие циклов позволяет использовать метод динамического программирования • Глобальный минимум, произвольная энергия, высокая скорость работы Рисунки: M. Bleyer
  • 100. Переход к деревьям Главный вопрос – какие ребра убирать? • Отсутствие циклов позволяет использовать метод динамического программирования • Глобальный минимум, произвольная энергия, высокая скорость работы Рисунки: M. Bleyer
  • 101. Алгоритм Scanline Optimization • Удаляются все вертикальные ребра • Так поступали в первых подобных алгоритмах Рисунки: M. Bleyer
  • 102. Алгоритм Scanline Optimization Очевидная проблема – рассогласованность строк между собой (horizontal streaking) Пример: M. Bleyer
  • 103. Алгоритм на основе MST Идея – не форсировать гладкость между пикселями сильно разного цвета Каждому ребру (паре пикселей p и q) присваивается вес: w ( p , q ) | I ( p )  I ( q ) | Строится минимальное покрывающее дерево Рисунок: M. Bleyer (Minimum Spanning Tree, MST) O. Veksler. Stereo Correspondence by Dynamic Programming on a Tree. CVPR, 2005.
  • 104. Алгоритм на основе MST Лучше, чем scanline optimization, но некоторая рассогласованность остается
  • 105. Алгоритм Semi-Global Matching В каждом пикселе строится свое дерево Оптимизация производится вдоль p лучей, исходящих из пикселя Подход не совсем глобальный, но и Рисунок: M. Bleyer не локальный H. Hirschmueller. Accurate and Efficient Stereo Processing by Semi-Global Matching and Mutual Information. CVPR, 2005.
  • 106. Алгоритм Semi-Global Matching • Рассогласованности нет, но есть «изолированные» пиксели • Алгоритм заточен под работу с аэрофотоснимками
  • 107. Алгоритм Semi-Global Matching Примеры: http://www.robotic.de/Heiko.Hirschmueller/
  • 108. Алгоритм Simple Tree p p Рисунки: M. Bleyer В каждом пикселе строятся два дерева, совместно покрывающих все изображение. Алгоритм глобальный и лишен недостатка SGM. M. Bleyer, M. Gelautz. Simple but Effective Tree Structures for Dynamic Programming- based Stereo Matching. VISAPP, 2008.
  • 109. Алгоритм Simple Tree Пример работы
  • 110. Борьба с перекрытиями • Модифицируем унарный потенциал: E data ( D )   p I m( p , dp) Edata( D)   pI m( p, dp )(1  O( p ))  Pocc  O( p )  где: O(p) – функция, возвращающая 1, если пиксель принадлежит области перекрытия, иначе 0 Pocc – штраф за перекрытие
  • 111. Борьба с перекрытиями • Модифицируем унарный потенциал: E data ( D )   p I m( p , dp) Как задать функцию O(p)? Edata( D)   pI m( p, dp )(1  O( p ))  Pocc  O( p )  где: O(p) – функция, возвращающая 1, если пиксель принадлежит области перекрытия, иначе 0 Pocc – штраф за перекрытие
  • 112. Ограничение видимости Из двух пикселей p и q виден тот, который ближе к камере. Пиксель p на левом изображении принадлежит области перекрытия. Левое изображение Правое изображение Диспаритет Диспритет q q Warp p p X-координаты X-координаты Рисунки: M. Bleyer
  • 113. Модифицированная энергия • Унарный потенциал: Edata ( D )   pI m( p, dp )(1  O( p))  Pocc  O ( p)  • Зададим O(p) при помощи ограничения видимости (visibility constraint): 1, если q  I : p  dp  q  dq и dp  dq O( p)    0, иначе
  • 114. Глобальные методы. Резюме • Наилучшие по качеству методы на сегодняшний день • Методы, основанные на динамическом программировании, - отличный компромисс между качеством и скоростью • Узкое место глобальных методов – функционалы энергии, а не алгоритмы оптимизации
  • 115. План • Введение • Формулировка задачи • Трудности и предположения • Локальные методы • Глобальные методы • Использование сегментации • Резюме
  • 117. Использование сегментации • Очень популярно в последние годы • Методы с сегментацией дают наилучшие результаты на стандартных наборах данных • Вероятно, проблема в «переобучении» на наборах Middlebury • Явное доминирование в верхней части рейтинга
  • 118. Использование сегментации • Используется предположение о сегментации («области разрыва диспаритета совпадают с краями на изображении) • Для его реализации применяют пересегментацию (т.е. сегменты достаточно мелкие, «с запасом») Исходное Результат Границы объектов изображение сегментации Примеры: M. Bleyer
  • 119. Использование сегментации • Используется предположение о сегментации («области разрыва диспаритета совпадают с краями на изображении) • Для его реализации применяют пересегментацию (т.е. сегменты достаточно мелкие, «с из пиксельного Происходит переход запасом») пространства в пространство сегментов. Гладкость внутри сегментов форсируется Исходное Результат сегментации Границы объектов изображение Примеры: M. Bleyer
  • 120. Базовый алгоритм с сегментацией • Произвести сегментацию • Mean-shift, EDISON и др. • Инициализировать решение • Любой локальный алгоритм на пикселях • Аппроксимировать сегменты гладкими поверхностями • Модель: плоскость, B-сплайн • Средство: RANSAC, голосование и т.д. • Уточнить разметку сегментов • Iterated Conditional Modes (ICM), Cooperative Optimization и др.
  • 121. Использование сегментации • Преимущества • Надежность в областях со слабой текстурой • Снижение размерности задачи (оптимизация на уровне сегментов) • Недостатки • Нет защиты от нарушения предположения о сегментации • Сложность выбора модели, описывающей изменение диспаритета внутри сегмента • Проблему перекрытий все равно необходимо решать на пиксельном уровне
  • 122. План • Введение • Формулировка задачи • Трудности и предположения • Локальные методы • Глобальные методы • Использование сегментации • Резюме
  • 123. Что не вошло • Учет цвета в стерео • Борьба с перепадами яркости • Совмещение задач стерео и матирования • Обучение парных потенциалов • …
  • 124. Выводы • Многое уже сделано, но задача не решена • Главный компромисс: скорость либо качество • Требуется расширение тестовых выборок • Явный тренд в сторону глобальных алгоритмов
  • 125. На следующих лекциях • Многовидовая реконструкция • Реконструкция по 1 изображению