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

930 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
930
On SlideShare
0
From Embeds
0
Number of Embeds
265
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

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

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

×