SlideShare a Scribd company logo
Цифровой Фотомонтаж, ч.2
Общая информация




  Этот курс
подготовлен и
читается при
  поддержке
Формирование изображения
• Мы представляем изображение как композицию объекта и фона,
причём какие-то пиксели изображения есть результат смешения
объекта и фона (следствие дискретизации)

 • I =  * F + (1 - ) * B



        =               *               +               *




• Карта прозрачности (opacity map)  из [0,1], где 0 - фон, 1 –
непрозрачный объект
    • Она же альфа-канал
Композиция изображений




• Выделенный объект можем встроить в другое
  изображение
• Если провели мягкую сегментацию, то при
  встраивании смешиваем (blending) изображения
  объекта и фона:
Подход к решению
• Для изображений, полученных в обычных
  условиях, задача раскладывается в несколько
  более простых задач
  • Интерактивная «жесткая» сегментация объекта
     – Пользовательский ввод
     –  из {0,1}
  • Мягкая сегментация объекта (собственно маттирование)
     – Результат жесткой сегментации используется как
       начальное приближение для расчета  из [0,1]




                                                +
Маттирование границ (GrabCut)




  Жесткая     Автоматическая      Мягкая
сегментация      три-карта      сегментация

                                 Slide by C. Rother
Natural Image Matting



                                                    Средний цвет
                                                      объекта




                                                    Средний цвет
                                                       фона




     Ruzon and Tomasi, Alpha estimation in natural images, 2000
                                                       Slide by C. Rother
Natural Image Matting




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



Jue Wang and Michael Cohen. Image and Video Matting: A Survey. Foundations
   and Trends in Computer Graphics and Vision, Vol. 3, No.2, 2007.
Обычное маттирование

            Без регуляризации по альфа




  Вход        Bayes Matting           Knockout 2
           Chuang et. al. (2001)   Photoshop Plug-In
Маттирование границы


Foreground
                                         Шумная альфа
                            1
             Mix

                   Back-
                   ground

                            0
                            Foreground    Mix       Background


     Сглаживанием плавно границу
Динамическое программирование




             t+1
             t


                   DP
                        Результат после DP Border
                        Matting



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




• Что делать, когда невозможно сегментировать объекты?
Feathering
Feathering
Feathering




•   «Оптимальное» окно: плавный переход, но нет «призраков»
•   Зависит от размеров структуры, т.е. от «частоты»
Пирамиды Лапласа для сшивки




• Идея: сшивать отдельно по каждой полосе частот
Идея метода
Пример
Иллюстрация работы
Пример
Пример
Пример
Пример
Пример
Упрощение




• Можно использовать только 2 полосы – высокие и
  низкие частоты
• Низкие частоты плавно смешивать (цветовые
  переходы)
• Высокие не смешивать, использовать «жесткую»
  сегментацию
2х полосное смешение
Сравнение
Сравнение
Poisson editing
  • Задача: встроить объект из
    изображения s в изображение t
  • Идея:
      • Возьмём поле градиента из
        изображения s (и только!)
      • Вычислим цвета в новой области так,
        чтобы новое поле градиента
        совпадало с s, и цвета на границе
        совпадали с цветами t
  • «Направленная интерполяция»
      • Guided interpolation




PEREZ, P., GANGNET, M., AND BLAKE, A. 2003. Poisson image editing.
Proceedings of ACM SIGGRAPH, 313-318.
Подход




• Вычисляем функцию f в области Ω такую, чтобы
  её градиент в Ω соответствовал векторному полю
  v, которое может быть (а может и не быть)
  градиентом исходной функции g c заданными
  граничными условиями
Уравнение Пуассона для изображения
• Задача: найти f, такое что
                       2
 min f        f  v                                     f s
         
          
                                  f   
                                            f t*
                                                    


• Решение этой задачи – это решение
  уравнения Пуассона:
                                                                   ft
   f  divv       f       
                                 f t*
                                         


• Решаются 3 задачи независимо по                         0
  каждому каналу RGB
• Дискретизация уравнений приводит к
  системе линейных уравнений, которая
  решается методом Гаусса-Зиделя                                ft  f s
Результат
Смешение полей градиентов
•   Вместо полного
    копирования поля
    градиента из исходного
    изображения, можно
    сделать их композицию
•   Пр: взять максимумы
    градиентов из исходного
    и целевого полей
Примеры
Редактирование выделения
Drag-and-Drop Pasting

   • Объединим наработки разных подходов
      • Смешение по Пуассону
      • Альфа-смешение
      • Выбор оптимальной границы по GrabCut




Jiaya Jia, Jian Sun, Chi-Keung Tang, Heung-Yeung Shum. Drag-and-Drop
Pasting. Siggraph 2006
Проблемы метода по Пуассону
• Рассмотрим 2 примера
  встраивания одного
  объекта, но с разными
  границами




        +


   fs          ft
Проблемы метода по Пуассону

• Результат разный!




          +

   ffss        fft t
Проблемы метода по Пуассону
• Направляющее поле v  f s , обозначим f   f  f s
• Тогда исходное уравнение эквивалентно:
                       2                                                 2
                                           *
 min f      f  v       f   
                                     ft
                                               
                                                     min f      f        f    f t  f s
                                                                                                  
                                                             


• Что эквивалентно решению уравнения Лапласа:
     f   0          f    f t  f s
                                                


• Свойство уравнения Лапласа:
                   2
• Энергия      f  будет близка нулю тогда и только
                
             


  тогда, если          ft  fs         k , где k - константа
                                 
Проблемы метода по Пуассону
•    Разные границы дают
     разный результат в
     зависимости от
     равномерности цвета на
     границе




         +

fs               ft


                                  '
                              f
Уравнение Пуассона


• Где проходит оптимальная граница ∂Ω ?
  • Внутри обозначенной пользователем области
  • Вне объекта интереса
     – Его находим через GrabCut


• Как мы её будем оптимизировать?
  • Минимизируем отклонение цветов
                                           2     blue
 min f     f t ( p ) 
         p
                            f s ( p)   k 
Оптимизация границы

                                            2
 E (, k )      f ( p)  f ( p )   k 
                p
                       t         s                blue


• ∂Ω и k - неизвестные
• Итеративная оптимизация
  • Инициализируем ∂Ω по отмеченной пользователем границе
  • По ∂Ω вычисляем оптимальное k :
                 E (, k )               Задача кратчайшего
                            0            пути
                    k
  • По k, оптимизируем границу ∂Ω.
  • Повторяем оба шага до сходимости
Оптимизация границы
• В 2D графе, вычисляем кратчайший путь между
  двумя точками – Динамическое Программирование
  • Алгоритм Дейкстры
• В нашем случае – вычисляем замкнутый путь
Оптимизация границы


• Оптимальность
  • Избегаем ситуации изгиба пути вокруг разреза за
    счёт выбора начального положения разреза


• Как выбрать начальный разрез?
  • Выбираем короткий, чтобы минимизировать
    сложность O(MN)
  • Должен проходить через гладкую область
Пример
Пример
Учёт дробной границы


• Альфа-смешение и смешение по Пуассону в
  предыдущих работах являются двумя разными
  методами.
  • Альфа-смешение обеспечивает дробную границу, но не может
    изменять цвет исходного объекта.
  • Смешение по Пуассону модифицирует цвет объекта, но использует
    только бинарную границу.
  • Объединим оба подхода.
Учёт дробной границы

• Дробная граница важна для смешения изображений:
Учёт дробной границы

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




                                                                  ∂Ω
Учёт дробной границы

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



  Учет дробной границы:
     зеленая область
  или:
     желтая область
Учёт дробной границы

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

                                            x f s ( x , y )  f ( x  1, y )  f ( x, y )

                 xff s((xx,yy))
                                ,            ( x ,, y ), ((x  1, y )) yellow
                                              ( x y), x  1, y  yellow
                         x s
               
 ' v ( x, y )   x ( af s  (1  a ) f t )  ( x, y ), ( x  1, y )  green
vx ( x, y)   x ( f s  (1   ) f t ) ( x, y), ( x  1, y)  green
    x
                             0                             otherwise
                           0                              otherwise
               
Учёт дробной границы

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



                       x f s ( x, y )     ( x, y ), ( x  1, y )  yellow
                
  v ( x, y )   x ( af s  (1  a ) ft ) ( x, y ), ( x  1, y )  green
   x
                             0                        otherwise
                
Учёт дробной границы

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



                       x f s ( x, y )     ( x, y ), ( x  1, y )  yellow
                
  v ( x, y )   x ( af s  (1  a ) ft ) ( x, y ), ( x  1, y )  green
   x
                             0                        otherwise
                
Учёт дробной границы


• Финальная минимизация:
                              2
     min f        *
                       f  v  dp   f    *
                                                 ft
             p                                        *



• Решаем соответствующее уравнение Пуассона.
Результат и сравнение




                        Альфа смешение
Результат и сравнение




  Drag&Drop         Смешение по Пуассону
Результат и сравнение
Результат и сравнение




  Drag&Drop         Digital Photomontage
Результат и сравнение




  Drag&Drop         Digital Photomontage
Результат и сравнение




  Drag&Drop             Альфа-смешение
Результат и сравнение




  Drag&Drop         Смешение по Пуассону
Результат
Результат
Еще примеры




http://www.cse.cuhk.edu.hk/~leojia/all_project_webpages/ddp/drag-and-drop_pasting.html
Inpainting




 • Задача: качество закрыть дырку в изображении
     • Царапины, трещины, текст
     • Вырезанный объект
 • Как это делают эксперты:
     • Структура изображения продолжается внутрь области дефекта
        – Т.е. контура объектов продолжаются внутрь области
     • Области внутри дефекта заливаются цветом согласно
       соседним областям
     • Текстура искусственно добавляется (синтезируется в области)


M. Bertalmio, G. Sapiro, V. Caselles, C. Ballester. Image inpainting. In
Proc. Siggraph 2000.
Идея метода
•   Вычислить изменение изображения вдоль нормали к
    границе области
•   Продолжить за границу




•   «Края» изображения обычно не соответствуют нормалям к
    границам
•   Поэтому будем вычислять градиенты около границы, и в
    качестве направления интерполяции будем выбирать
    ортогональное к вектору градиента
•   Далее используем anisotropic diffusion
Демонстрация
Финальный результат
Пример №2




            • Маска
Пример №3
Exemplar-based inpainting




A. Criminisi, P. Perez, K. Toyama. Region filling and object removal by exemplar-
based inpainting. In IEEE Transactions on Image Processing, 2004
Идея
• Объединить все 3 основные идеи по реконструкции
  изображений художниками
• Используем синтез текстур по шаблону
• Приоритет даём продолжению линейных структур
Алгоритм - шаг 1
• Назначим каждому пикселю на границе приоритет
• Линейным структурам назначим больший
  приоритет
Алгоритм - шаг 2
• Распространяем «структуру» путём копирования
  фрагментов изображения вдоль направления
  распространения структуры
Иллюстрация
Результаты




  Original   Object Cut    Tex. Syn.   Criminisi



• Сравнение с синтезом текстур
Результаты




Original   Object Cut   Диффузия   Метод Criminisi
Развитие методов
• Методы на основе диффузии
  • Более сложные уравнения диффузии (Навье-Стокса,
    вариационные методы и т.д.)
  • Учёт статистики естественных изображений (S. Roth and
    M. J. Black, 2005)
• Методы на основе фрагментов
  • Усовершенствование метрик выбора фрагментов
  • Смешение нескольких фрагментов
  • Использование разреженных методов для оценки
    фрагментов
Сравнение




Z. Xu, J. Sun Image Inpainting by Patch Propagation Using Patch Sparsity, IEEE
    Trans. of Image Processing, 2010
Подделка изображений




           • Сталин и Ежов
Подделка изображений




        • Mao Tse-tung and Po Ku
Некоторые подходы
    • Клонирование объектов
        • Поиск похожих фрагментов
    • Монтаж объектов
        • Оценка уровня шума
        • Оценка освещённости
    • Передискретизация фрагментов
        • Оценка корреляции соседних пикселей
    • Оценка JPEG
        • Оценка гистограмма коэффициентов после повторного
          сохранения
        • Поиск границ блоков после обрезания и сохранения
          фрагмента


H. Farid A Survey of Image Forgery Detection IEEE Signal Processing Magazine,
26(2):16-25, 2009
Поиск клонирования




•   Вычисление инвариантов(признаков) для каждого блока
•   Поиск похожих блоков по всему изображению (kd-дерево)
Поиск клонирования
Оценка шума




•   Оценка шума камеры в блоках изображения для выделения
    подозрительных регионов
•   Сравнение шума с эталонным шумом камеры
Оценка направления освещения




P. Nillius and J.-O. Eklundh, “Automatic estimation of the projected light source
                             direction,” CVPR 2001
Использование для поиска подделок




     Подделка

                        Реальное фото
Резюме
• Выделение объекта
  • Интерактивная сегментация изображений
  • Маттирование по три-карте
• Склейка фрагментов
  • Многополосная склейка
  • Выбор оптимального разреза с GraphCut
  • Склейка по Пуассону
• Реконструкция изображения
  • Учёт структур и реконструкция текстур
• Поиск подделок в изображениях

More Related Content

What's hot

CV2011 Lecture 4. Image representation
CV2011 Lecture 4. Image representationCV2011 Lecture 4. Image representation
CV2011 Lecture 4. Image representationAnton Konushin
 
CV2011 Lecture 12. Action recognition
CV2011 Lecture 12. Action recognitionCV2011 Lecture 12. Action recognition
CV2011 Lecture 12. Action recognitionAnton Konushin
 
CV2011 Lecture 10. Image retrieval
CV2011 Lecture 10.  Image retrievalCV2011 Lecture 10.  Image retrieval
CV2011 Lecture 10. Image retrievalAnton Konushin
 
CV2011 Lecture 11. Basic video
CV2011 Lecture 11. Basic videoCV2011 Lecture 11. Basic video
CV2011 Lecture 11. Basic videoAnton Konushin
 
CV2011 Lecture 3. Basic image analysis
CV2011 Lecture 3. Basic image analysisCV2011 Lecture 3. Basic image analysis
CV2011 Lecture 3. Basic image analysisAnton 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
 
L05 features
L05 featuresL05 features
L05 features
Victor Kulikov
 
Definite integral
Definite integralDefinite integral
Definite integral
BloodyCarnage
 
Лекция 2
Лекция 2Лекция 2
Лекция 2
Victor Kulikov
 
L06 detection
L06 detectionL06 detection
L06 detection
Victor Kulikov
 
Лекция 07 Обработка видео
Лекция 07 Обработка видеоЛекция 07 Обработка видео
Лекция 07 Обработка видеоVictor Kulikov
 
Лекция 4 Обработка бинарных изображений
Лекция 4 Обработка бинарных изображенийЛекция 4 Обработка бинарных изображений
Лекция 4 Обработка бинарных изображений
Victor Kulikov
 
20111009 csseminar image feature detection and matching
20111009 csseminar image feature detection and matching20111009 csseminar image feature detection and matching
20111009 csseminar image feature detection and matchingComputer Science Club
 
20120413 videorecognition konushin_lecture02
20120413 videorecognition konushin_lecture0220120413 videorecognition konushin_lecture02
20120413 videorecognition konushin_lecture02Computer Science Club
 
Лекция 8 Основы 3D обработки
Лекция 8 Основы 3D обработкиЛекция 8 Основы 3D обработки
Лекция 8 Основы 3D обработкиVictor Kulikov
 
Лекция 3 Сегментация
Лекция 3 СегментацияЛекция 3 Сегментация
Лекция 3 СегментацияVictor Kulikov
 
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 Lecture 8. Detection
CV2011 Lecture 8. DetectionCV2011 Lecture 8. Detection
CV2011 Lecture 8. DetectionAnton Konushin
 
Многочлены наилучших среднеквадратичных приближений
Многочлены наилучших среднеквадратичных приближенийМногочлены наилучших среднеквадратичных приближений
Многочлены наилучших среднеквадратичных приближенийTheoretical mechanics department
 
Skyforge rendering tech (KRI 2014)
Skyforge rendering tech (KRI 2014)Skyforge rendering tech (KRI 2014)
Skyforge rendering tech (KRI 2014)Sergey Makeev
 

What's hot (20)

CV2011 Lecture 4. Image representation
CV2011 Lecture 4. Image representationCV2011 Lecture 4. Image representation
CV2011 Lecture 4. Image representation
 
CV2011 Lecture 12. Action recognition
CV2011 Lecture 12. Action recognitionCV2011 Lecture 12. Action recognition
CV2011 Lecture 12. Action recognition
 
CV2011 Lecture 10. Image retrieval
CV2011 Lecture 10.  Image retrievalCV2011 Lecture 10.  Image retrieval
CV2011 Lecture 10. Image retrieval
 
CV2011 Lecture 11. Basic video
CV2011 Lecture 11. Basic videoCV2011 Lecture 11. Basic video
CV2011 Lecture 11. Basic video
 
CV2011 Lecture 3. Basic image analysis
CV2011 Lecture 3. Basic image analysisCV2011 Lecture 3. Basic image analysis
CV2011 Lecture 3. Basic image analysis
 
CV2011-2. Lecture 10. Pose estimation.
CV2011-2. Lecture 10.  Pose estimation.CV2011-2. Lecture 10.  Pose estimation.
CV2011-2. Lecture 10. Pose estimation.
 
L05 features
L05 featuresL05 features
L05 features
 
Definite integral
Definite integralDefinite integral
Definite integral
 
Лекция 2
Лекция 2Лекция 2
Лекция 2
 
L06 detection
L06 detectionL06 detection
L06 detection
 
Лекция 07 Обработка видео
Лекция 07 Обработка видеоЛекция 07 Обработка видео
Лекция 07 Обработка видео
 
Лекция 4 Обработка бинарных изображений
Лекция 4 Обработка бинарных изображенийЛекция 4 Обработка бинарных изображений
Лекция 4 Обработка бинарных изображений
 
20111009 csseminar image feature detection and matching
20111009 csseminar image feature detection and matching20111009 csseminar image feature detection and matching
20111009 csseminar image feature detection and matching
 
20120413 videorecognition konushin_lecture02
20120413 videorecognition konushin_lecture0220120413 videorecognition konushin_lecture02
20120413 videorecognition konushin_lecture02
 
Лекция 8 Основы 3D обработки
Лекция 8 Основы 3D обработкиЛекция 8 Основы 3D обработки
Лекция 8 Основы 3D обработки
 
Лекция 3 Сегментация
Лекция 3 СегментацияЛекция 3 Сегментация
Лекция 3 Сегментация
 
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 Lecture 8. Detection
CV2011 Lecture 8. DetectionCV2011 Lecture 8. Detection
CV2011 Lecture 8. Detection
 
Многочлены наилучших среднеквадратичных приближений
Многочлены наилучших среднеквадратичных приближенийМногочлены наилучших среднеквадратичных приближений
Многочлены наилучших среднеквадратичных приближений
 
Skyforge rendering tech (KRI 2014)
Skyforge rendering tech (KRI 2014)Skyforge rendering tech (KRI 2014)
Skyforge rendering tech (KRI 2014)
 

Viewers also liked

Computer vision infrastracture
Computer vision infrastractureComputer vision infrastracture
Computer vision infrastractureAnton Konushin
 
CV2015. Лекция 6. Нейросетевые алгоритмы.
CV2015. Лекция 6. Нейросетевые алгоритмы.CV2015. Лекция 6. Нейросетевые алгоритмы.
CV2015. Лекция 6. Нейросетевые алгоритмы.
Anton Konushin
 
Anton Konushin - TEDxRU 2009
Anton Konushin - TEDxRU 2009Anton Konushin - TEDxRU 2009
Anton Konushin - TEDxRU 2009
Anton Konushin
 
Writing a computer vision paper
Writing a computer vision paperWriting a computer vision paper
Writing a computer vision paperAnton Konushin
 
Classifier evaluation and comparison
Classifier evaluation and comparisonClassifier evaluation and comparison
Classifier evaluation and comparisonAnton 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
 
Andrew Zisserman Talk - Part 1a
Andrew Zisserman Talk - Part 1aAndrew Zisserman Talk - Part 1a
Andrew Zisserman Talk - Part 1aAnton Konushin
 
CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.
Anton Konushin
 
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
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
 
Статистическое сравнение классификаторов
Статистическое сравнение классификаторовСтатистическое сравнение классификаторов
Статистическое сравнение классификаторовAnton Konushin
 

Viewers also liked (11)

Computer vision infrastracture
Computer vision infrastractureComputer vision infrastracture
Computer vision infrastracture
 
CV2015. Лекция 6. Нейросетевые алгоритмы.
CV2015. Лекция 6. Нейросетевые алгоритмы.CV2015. Лекция 6. Нейросетевые алгоритмы.
CV2015. Лекция 6. Нейросетевые алгоритмы.
 
Anton Konushin - TEDxRU 2009
Anton Konushin - TEDxRU 2009Anton Konushin - TEDxRU 2009
Anton Konushin - TEDxRU 2009
 
Writing a computer vision paper
Writing a computer vision paperWriting a computer vision paper
Writing a computer vision paper
 
Classifier evaluation and comparison
Classifier evaluation and comparisonClassifier evaluation and comparison
Classifier evaluation and comparison
 
CV2011-2. Lecture 11. Face analysis.
CV2011-2. Lecture 11. Face analysis.CV2011-2. Lecture 11. Face analysis.
CV2011-2. Lecture 11. Face analysis.
 
Andrew Zisserman Talk - Part 1a
Andrew Zisserman Talk - Part 1aAndrew Zisserman Talk - Part 1a
Andrew Zisserman Talk - Part 1a
 
CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.
 
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
 
Статистическое сравнение классификаторов
Статистическое сравнение классификаторовСтатистическое сравнение классификаторов
Статистическое сравнение классификаторов
 

Similar to CV2011-2. Lecture 03. Photomontage, part 2.

20100919 computer vision_konushin_lecture02
20100919 computer vision_konushin_lecture0220100919 computer vision_konushin_lecture02
20100919 computer vision_konushin_lecture02Computer Science Club
 
предел последовательности
предел последовательностипредел последовательности
предел последовательностиtomik1044
 
Подобедов: Абстрактный Детерминизм
Подобедов: Абстрактный ДетерминизмПодобедов: Абстрактный Детерминизм
Подобедов: Абстрактный ДетерминизмAleximos
 
Funkciya y cos_ee_svojstva_i_grafik
Funkciya y cos_ee_svojstva_i_grafikFunkciya y cos_ee_svojstva_i_grafik
Funkciya y cos_ee_svojstva_i_grafik
Иван Иванов
 
матемтик анализ лекц№ 2
матемтик анализ лекц№ 2матемтик анализ лекц№ 2
матемтик анализ лекц№ 2narangerelodon
 
математик анализ хичээлийн лекц № 2
математик анализ хичээлийн лекц № 2математик анализ хичээлийн лекц № 2
математик анализ хичээлийн лекц № 2narangerelodon
 

Similar to CV2011-2. Lecture 03. Photomontage, part 2. (8)

20100919 computer vision_konushin_lecture02
20100919 computer vision_konushin_lecture0220100919 computer vision_konushin_lecture02
20100919 computer vision_konushin_lecture02
 
rus_Diploma_master_degree
rus_Diploma_master_degreerus_Diploma_master_degree
rus_Diploma_master_degree
 
предел последовательности
предел последовательностипредел последовательности
предел последовательности
 
Алгоритмы сортировки
Алгоритмы сортировкиАлгоритмы сортировки
Алгоритмы сортировки
 
Подобедов: Абстрактный Детерминизм
Подобедов: Абстрактный ДетерминизмПодобедов: Абстрактный Детерминизм
Подобедов: Абстрактный Детерминизм
 
Funkciya y cos_ee_svojstva_i_grafik
Funkciya y cos_ee_svojstva_i_grafikFunkciya y cos_ee_svojstva_i_grafik
Funkciya y cos_ee_svojstva_i_grafik
 
матемтик анализ лекц№ 2
матемтик анализ лекц№ 2матемтик анализ лекц№ 2
матемтик анализ лекц№ 2
 
математик анализ хичээлийн лекц № 2
математик анализ хичээлийн лекц № 2математик анализ хичээлийн лекц № 2
математик анализ хичээлийн лекц № 2
 

More from Anton Konushin

CV2015. Лекция 7. Поиск изображений по содержанию.
CV2015. Лекция 7. Поиск изображений по содержанию.CV2015. Лекция 7. Поиск изображений по содержанию.
CV2015. Лекция 7. Поиск изображений по содержанию.
Anton Konushin
 
CV2015. Лекция 5. Выделение объектов.
CV2015. Лекция 5. Выделение объектов.CV2015. Лекция 5. Выделение объектов.
CV2015. Лекция 5. Выделение объектов.
Anton Konushin
 
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
Anton Konushin
 
CV2015. Лекция 2. Основы обработки изображений.
CV2015. Лекция 2. Основы обработки изображений.CV2015. Лекция 2. Основы обработки изображений.
CV2015. Лекция 2. Основы обработки изображений.
Anton Konushin
 
CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.
Anton Konushin
 
Технологии разработки ПО
Технологии разработки ПОТехнологии разработки ПО
Технологии разработки ПО
Anton Konushin
 
CV2011-2. Lecture 01. Segmentation.
CV2011-2. Lecture 01. Segmentation.CV2011-2. Lecture 01. Segmentation.
CV2011-2. Lecture 01. Segmentation.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
 

More from Anton Konushin (8)

CV2015. Лекция 7. Поиск изображений по содержанию.
CV2015. Лекция 7. Поиск изображений по содержанию.CV2015. Лекция 7. Поиск изображений по содержанию.
CV2015. Лекция 7. Поиск изображений по содержанию.
 
CV2015. Лекция 5. Выделение объектов.
CV2015. Лекция 5. Выделение объектов.CV2015. Лекция 5. Выделение объектов.
CV2015. Лекция 5. Выделение объектов.
 
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
 
CV2015. Лекция 2. Основы обработки изображений.
CV2015. Лекция 2. Основы обработки изображений.CV2015. Лекция 2. Основы обработки изображений.
CV2015. Лекция 2. Основы обработки изображений.
 
CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.
 
Технологии разработки ПО
Технологии разработки ПОТехнологии разработки ПО
Технологии разработки ПО
 
CV2011-2. Lecture 01. Segmentation.
CV2011-2. Lecture 01. Segmentation.CV2011-2. Lecture 01. Segmentation.
CV2011-2. Lecture 01. Segmentation.
 
CV2011 Lecture 13. Real-time vision
CV2011 Lecture 13. Real-time visionCV2011 Lecture 13. Real-time vision
CV2011 Lecture 13. Real-time vision
 

CV2011-2. Lecture 03. Photomontage, part 2.

  • 2. Общая информация Этот курс подготовлен и читается при поддержке
  • 3. Формирование изображения • Мы представляем изображение как композицию объекта и фона, причём какие-то пиксели изображения есть результат смешения объекта и фона (следствие дискретизации) • I =  * F + (1 - ) * B = * + * • Карта прозрачности (opacity map)  из [0,1], где 0 - фон, 1 – непрозрачный объект • Она же альфа-канал
  • 4. Композиция изображений • Выделенный объект можем встроить в другое изображение • Если провели мягкую сегментацию, то при встраивании смешиваем (blending) изображения объекта и фона:
  • 5. Подход к решению • Для изображений, полученных в обычных условиях, задача раскладывается в несколько более простых задач • Интерактивная «жесткая» сегментация объекта – Пользовательский ввод –  из {0,1} • Мягкая сегментация объекта (собственно маттирование) – Результат жесткой сегментации используется как начальное приближение для расчета  из [0,1] +
  • 6. Маттирование границ (GrabCut) Жесткая Автоматическая Мягкая сегментация три-карта сегментация Slide by C. Rother
  • 7. Natural Image Matting Средний цвет объекта Средний цвет фона Ruzon and Tomasi, Alpha estimation in natural images, 2000 Slide by C. Rother
  • 8. Natural Image Matting Идея: • интерполируем с  гауссианы цвета фона и объекта • выбираем , на которой достигается максимум цвета пикселя объекта Jue Wang and Michael Cohen. Image and Video Matting: A Survey. Foundations and Trends in Computer Graphics and Vision, Vol. 3, No.2, 2007.
  • 9. Обычное маттирование Без регуляризации по альфа Вход Bayes Matting Knockout 2 Chuang et. al. (2001) Photoshop Plug-In
  • 10. Маттирование границы Foreground Шумная альфа 1 Mix Back- ground 0 Foreground Mix Background Сглаживанием плавно границу
  • 11. Динамическое программирование t+1 t DP Результат после DP Border Matting Сглаживанием параметры сплайна с помощью динамического программирования по контуру
  • 13. Прямая сшивка изображений • Что делать, когда невозможно сегментировать объекты?
  • 16. Feathering • «Оптимальное» окно: плавный переход, но нет «призраков» • Зависит от размеров структуры, т.е. от «частоты»
  • 17. Пирамиды Лапласа для сшивки • Идея: сшивать отдельно по каждой полосе частот
  • 26. Упрощение • Можно использовать только 2 полосы – высокие и низкие частоты • Низкие частоты плавно смешивать (цветовые переходы) • Высокие не смешивать, использовать «жесткую» сегментацию
  • 30. Poisson editing • Задача: встроить объект из изображения s в изображение t • Идея: • Возьмём поле градиента из изображения s (и только!) • Вычислим цвета в новой области так, чтобы новое поле градиента совпадало с s, и цвета на границе совпадали с цветами t • «Направленная интерполяция» • Guided interpolation PEREZ, P., GANGNET, M., AND BLAKE, A. 2003. Poisson image editing. Proceedings of ACM SIGGRAPH, 313-318.
  • 31. Подход • Вычисляем функцию f в области Ω такую, чтобы её градиент в Ω соответствовал векторному полю v, которое может быть (а может и не быть) градиентом исходной функции g c заданными граничными условиями
  • 32. Уравнение Пуассона для изображения • Задача: найти f, такое что 2 min f f  v f s   f   f t*  • Решение этой задачи – это решение уравнения Пуассона: ft  f  divv f   f t*  • Решаются 3 задачи независимо по 0 каждому каналу RGB • Дискретизация уравнений приводит к системе линейных уравнений, которая решается методом Гаусса-Зиделя ft  f s
  • 34. Смешение полей градиентов • Вместо полного копирования поля градиента из исходного изображения, можно сделать их композицию • Пр: взять максимумы градиентов из исходного и целевого полей
  • 37. Drag-and-Drop Pasting • Объединим наработки разных подходов • Смешение по Пуассону • Альфа-смешение • Выбор оптимальной границы по GrabCut Jiaya Jia, Jian Sun, Chi-Keung Tang, Heung-Yeung Shum. Drag-and-Drop Pasting. Siggraph 2006
  • 38. Проблемы метода по Пуассону • Рассмотрим 2 примера встраивания одного объекта, но с разными границами + fs ft
  • 39. Проблемы метода по Пуассону • Результат разный! + ffss fft t
  • 40. Проблемы метода по Пуассону • Направляющее поле v  f s , обозначим f   f  f s • Тогда исходное уравнение эквивалентно: 2 2 * min f  f  v f   ft  min f  f  f    f t  f s    • Что эквивалентно решению уравнения Лапласа: f   0 f    f t  f s  • Свойство уравнения Лапласа: 2 • Энергия f  будет близка нулю тогда и только   тогда, если ft  fs  k , где k - константа 
  • 41. Проблемы метода по Пуассону • Разные границы дают разный результат в зависимости от равномерности цвета на границе + fs ft ' f
  • 42. Уравнение Пуассона • Где проходит оптимальная граница ∂Ω ? • Внутри обозначенной пользователем области • Вне объекта интереса – Его находим через GrabCut • Как мы её будем оптимизировать? • Минимизируем отклонение цветов 2   blue min f   f t ( p )  p f s ( p)   k 
  • 43. Оптимизация границы 2 E (, k )    f ( p)  f ( p )   k  p t s   blue • ∂Ω и k - неизвестные • Итеративная оптимизация • Инициализируем ∂Ω по отмеченной пользователем границе • По ∂Ω вычисляем оптимальное k : E (, k ) Задача кратчайшего 0 пути k • По k, оптимизируем границу ∂Ω. • Повторяем оба шага до сходимости
  • 44. Оптимизация границы • В 2D графе, вычисляем кратчайший путь между двумя точками – Динамическое Программирование • Алгоритм Дейкстры • В нашем случае – вычисляем замкнутый путь
  • 45. Оптимизация границы • Оптимальность • Избегаем ситуации изгиба пути вокруг разреза за счёт выбора начального положения разреза • Как выбрать начальный разрез? • Выбираем короткий, чтобы минимизировать сложность O(MN) • Должен проходить через гладкую область
  • 48. Учёт дробной границы • Альфа-смешение и смешение по Пуассону в предыдущих работах являются двумя разными методами. • Альфа-смешение обеспечивает дробную границу, но не может изменять цвет исходного объекта. • Смешение по Пуассону модифицирует цвет объекта, но использует только бинарную границу. • Объединим оба подхода.
  • 49. Учёт дробной границы • Дробная граница важна для смешения изображений:
  • 50. Учёт дробной границы • Где нужно учитывать дробные значения? • Только там, где найденная линия сшива (граница) проходит по голубой (дробной) области объекта ∂Ω
  • 51. Учёт дробной границы • Где нужно учитывать дробные значения? • Только там, где найденная линия сшива (граница) проходит по голубой (дробной) области объекта Учет дробной границы: зеленая область или: желтая область
  • 52. Учёт дробной границы • Как учесть дробные границы в методе Пуассона? • Построить смешанное направляющее поле  x f s ( x , y )  f ( x  1, y )  f ( x, y )   xff s((xx,yy))  , ( x ,, y ), ((x  1, y )) yellow ( x y), x  1, y  yellow x s  ' v ( x, y )   x ( af s  (1  a ) f t ) ( x, y ), ( x  1, y )  green vx ( x, y)   x ( f s  (1   ) f t ) ( x, y), ( x  1, y)  green x  0 otherwise  0 otherwise 
  • 53. Учёт дробной границы • Как учесть дробные границы в методе Пуассона? • Построить смешанное направляющее поле   x f s ( x, y ) ( x, y ), ( x  1, y )  yellow  v ( x, y )   x ( af s  (1  a ) ft ) ( x, y ), ( x  1, y )  green x  0 otherwise 
  • 54. Учёт дробной границы • Как учесть дробные границы в методе Пуассона? • Построить смешанное направляющее поле   x f s ( x, y ) ( x, y ), ( x  1, y )  yellow  v ( x, y )   x ( af s  (1  a ) ft ) ( x, y ), ( x  1, y )  green x  0 otherwise 
  • 55. Учёт дробной границы • Финальная минимизация: 2 min f  * f  v  dp f  *  ft p  * • Решаем соответствующее уравнение Пуассона.
  • 56. Результат и сравнение Альфа смешение
  • 57. Результат и сравнение Drag&Drop Смешение по Пуассону
  • 59. Результат и сравнение Drag&Drop Digital Photomontage
  • 60. Результат и сравнение Drag&Drop Digital Photomontage
  • 61. Результат и сравнение Drag&Drop Альфа-смешение
  • 62. Результат и сравнение Drag&Drop Смешение по Пуассону
  • 66. Inpainting • Задача: качество закрыть дырку в изображении • Царапины, трещины, текст • Вырезанный объект • Как это делают эксперты: • Структура изображения продолжается внутрь области дефекта – Т.е. контура объектов продолжаются внутрь области • Области внутри дефекта заливаются цветом согласно соседним областям • Текстура искусственно добавляется (синтезируется в области) M. Bertalmio, G. Sapiro, V. Caselles, C. Ballester. Image inpainting. In Proc. Siggraph 2000.
  • 67. Идея метода • Вычислить изменение изображения вдоль нормали к границе области • Продолжить за границу • «Края» изображения обычно не соответствуют нормалям к границам • Поэтому будем вычислять градиенты около границы, и в качестве направления интерполяции будем выбирать ортогональное к вектору градиента • Далее используем anisotropic diffusion
  • 70. Пример №2 • Маска
  • 72. Exemplar-based inpainting A. Criminisi, P. Perez, K. Toyama. Region filling and object removal by exemplar- based inpainting. In IEEE Transactions on Image Processing, 2004
  • 73. Идея • Объединить все 3 основные идеи по реконструкции изображений художниками • Используем синтез текстур по шаблону • Приоритет даём продолжению линейных структур
  • 74. Алгоритм - шаг 1 • Назначим каждому пикселю на границе приоритет • Линейным структурам назначим больший приоритет
  • 75. Алгоритм - шаг 2 • Распространяем «структуру» путём копирования фрагментов изображения вдоль направления распространения структуры
  • 77. Результаты Original Object Cut Tex. Syn. Criminisi • Сравнение с синтезом текстур
  • 78. Результаты Original Object Cut Диффузия Метод Criminisi
  • 79. Развитие методов • Методы на основе диффузии • Более сложные уравнения диффузии (Навье-Стокса, вариационные методы и т.д.) • Учёт статистики естественных изображений (S. Roth and M. J. Black, 2005) • Методы на основе фрагментов • Усовершенствование метрик выбора фрагментов • Смешение нескольких фрагментов • Использование разреженных методов для оценки фрагментов
  • 80. Сравнение Z. Xu, J. Sun Image Inpainting by Patch Propagation Using Patch Sparsity, IEEE Trans. of Image Processing, 2010
  • 81. Подделка изображений • Сталин и Ежов
  • 82. Подделка изображений • Mao Tse-tung and Po Ku
  • 83. Некоторые подходы • Клонирование объектов • Поиск похожих фрагментов • Монтаж объектов • Оценка уровня шума • Оценка освещённости • Передискретизация фрагментов • Оценка корреляции соседних пикселей • Оценка JPEG • Оценка гистограмма коэффициентов после повторного сохранения • Поиск границ блоков после обрезания и сохранения фрагмента H. Farid A Survey of Image Forgery Detection IEEE Signal Processing Magazine, 26(2):16-25, 2009
  • 84. Поиск клонирования • Вычисление инвариантов(признаков) для каждого блока • Поиск похожих блоков по всему изображению (kd-дерево)
  • 86. Оценка шума • Оценка шума камеры в блоках изображения для выделения подозрительных регионов • Сравнение шума с эталонным шумом камеры
  • 87. Оценка направления освещения P. Nillius and J.-O. Eklundh, “Automatic estimation of the projected light source direction,” CVPR 2001
  • 88. Использование для поиска подделок Подделка Реальное фото
  • 89. Резюме • Выделение объекта • Интерактивная сегментация изображений • Маттирование по три-карте • Склейка фрагментов • Многополосная склейка • Выбор оптимального разреза с GraphCut • Склейка по Пуассону • Реконструкция изображения • Учёт структур и реконструкция текстур • Поиск подделок в изображениях